[当我在做项目时,我需要数据库浏览器帮助程序的帮助,在这里进行
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(); } });
经过大量搜索,我没有找到任何答案。
供您参考,这是我在Database.java类上的getCarts()方法
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;
}
[当我正在做一个项目时,我需要数据库浏览器帮助程序的帮助,在这里创建CREATE TABLE`OrderDetailID`((ID ID INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE,`ProductId` TEXT,...
您创建OrderDetailID
,但是您试图插入表OrderDetail
。