У меня есть проблема в моем проекте, и мое приложение всегда показывает «К сожалению, приложения остановились» при вставке данных в базу данных.
Я следую учебнику из Интернета
Вот мой код базы данных
@Override
public void onCreate(SQLiteDatabase db) {
String CREATE_TBINVENTORY = "create table "
+ TABLE_INVENTORY+ "("
+ CLINVENTORY_BARCODE+ " varchar(15) primary key, "
+ CLINVENTORY_ARTICLE+ " varchar(25) not null, "
+ CLINVENTORY_DESCRIPTION+ " varchar(25) not null, "
+ CLINVENTORY_SIZE+ " varchar(4) not null, "
+ CLINVENTORY_QTY+ " int not null, "
+ CLINVENTORY_PRICE+ " int not null);";
db.execSQL(CREATE_TBINVENTORY);
//memasukan data kedalam table Inventory
public void insertInventory(InventoryModel inventorymodel){
ContentValues contentValues = new ContentValues();
contentValues.put(CLINVENTORY_BARCODE, inventorymodel.get_barcodemodel());
contentValues.put(CLINVENTORY_ARTICLE, inventorymodel.get_articlemodel());
contentValues.put(CLINVENTORY_DESCRIPTION, inventorymodel.get_descriptionmodel());
contentValues.put(CLINVENTORY_SIZE, inventorymodel.get_sizemodel());
contentValues.put(CLINVENTORY_QTY, inventorymodel.get_qtymodel());
contentValues.put(CLINVENTORY_PRICE, inventorymodel.get_pricemodel());
db.insert(TABLE_INVENTORY,null,contentValues);
}
это модель, я использую метод mvc
private int qtymodel,pricemodel;
private String barcodemodel, articlemodel, descriptionmodel, sizemodel;
public InventoryModel(){
}
public InventoryModel(String barcodemodel, String articlemodel,String descriptionmodel,String sizemodel, int qtymodel, int pricemodel){
this.barcodemodel = barcodemodel;
this.articlemodel = articlemodel;
this.descriptionmodel = descriptionmodel;
this.sizemodel = sizemodel;
this.qtymodel = qtymodel;
this.pricemodel = pricemodel;
}
public String get_barcodemodel(){
return barcodemodel;
}
public void set_barcodemodel(String barcodemodel){
this.barcodemodel = barcodemodel;
}
public String get_articlemodel(){
return articlemodel;
}
public void set_articlemodel(String articlemodel){
this.articlemodel = articlemodel;
}
public String get_descriptionmodel(){
return descriptionmodel;
}
public void set_descriptionmodel(String descriptionmodel){
this.descriptionmodel = descriptionmodel;
}
public String get_sizemodel(){
return sizemodel;
}
public void set_sizemodel(String sizemodel){
this.sizemodel = sizemodel;
}
public int get_qtymodel(){
return qtymodel;
}
public void set_qtymodel(int qtymodel){
this.qtymodel = qtymodel;
}
public int get_pricemodel(){
return pricemodel;
}
public void set_pricemodel(int pricemodel){
this.pricemodel = pricemodel;
}
и это команда в кнопке сохранения
save.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
DBDataSource dbDataSource = new DBDataSource(getApplicationContext(), null, null, 1);
barcode = barcodevalue.getText().toString();
article = articlevalue.getText().toString();
description = descriptionvalue.getText().toString();
size = sizevalue.getSelectedItem().toString();
qty = Integer.parseInt(qtyvalue.getText().toString());
price = Integer.parseInt(pricevalue.getText().toString());
InventoryModel inventorymodel = new InventoryModel(barcode,article,description,size,qty,price);
dbDataSource.onOpen();
dbDataSource.insertInventory(inventorymodel);
dbDataSource.close();
displayToast("Data Berhasil Disimpan");
}
});
Я надеюсь, что все вы можете помочь мне решить эту проблему