Пока я делаю проект, мне нужна помощь для помощника браузера БД, где я делаю это
CREATE TABLE `OrderDetailID` (
`ID` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE,
`ProductId` TEXT,
`ProductName` TEXT,
`Quantity` TEXT,
`Price` TEXT,
`Discount` TEXT
);
Но когда я хочу добавить корзину в мое приложение, оно вылетает, и мой logcat показывает это:
android.database.sqlite.SQLiteException: no such table: OrderDetail (code 1 SQLITE_ERROR): , while compiling: INSERT INTO OrderDetail(ProductId,ProductName,Quantity,Price,Discount) VALUES('02','COCONUT PAO','1','1000','null');
И ошибка отображается в моем классе Database.java на
public void addToCart(Order order) {
SQLiteDatabase db = getReadableDatabase();
String query = String.format("INSERT INTO OrderDetail(ProductId,ProductName,Quantity,Price,Discount) VALUES('%s','%s','%s','%s','%s');",
order.getProductId(),
order.getProductName(),
order.getQuantity(),
order.getPrice(),
order.getDiscount());
db.execSQL(query);
}
И FoodDetail.java
btnCart.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
new Database(getBaseContext()).addToCart(new Order(
foodId,
currentfood.getName(),
numberButton.getNumber(),
currentfood.getPrice(),
currentfood.getDiscountmenuId()
));
Toast.makeText(FoodDetail.this, "Added to cart", Toast.LENGTH_SHORT).show();
}
});
После выполнения большого поиска я не сделалне могу найти никакого ответа на этот вопрос.
Для вашей информации, вот мой метод getCarts () в классе Database.java
public List<Order> getCarts() {
SQLiteDatabase db = getReadableDatabase();
SQLiteQueryBuilder qb = new SQLiteQueryBuilder();
String[] sqlSelect = {"ProductId", "ProductName", "Quantity", "Price", "Discount"};
String sqlTable = "OrderDetail";
qb.setTables(sqlTable);
Cursor c = qb.query(db, sqlSelect, null, null, null, null, null);
final List<Order> result = new ArrayList<>();
if (c.moveToFirst()) {
do {
result.add(new Order(c.getString(c.getColumnIndex("ProductId")),
c.getString(c.getColumnIndex("ProductName")),
c.getString(c.getColumnIndex("Quantity")),
c.getString(c.getColumnIndex("Price")),
c.getString(c.getColumnIndex("Discount"))
));
} while (c.moveToNext());
}
return result;
}