Я столкнулся с проблемой с моим кодом, когда я пытаюсь вставить информацию в свою базу данных, используя функцию вставки (tablename, null, contenValues), она возвращает -1.Вот мой код
public void addItem(View view) {
String t1 = nameEt.getText().toString();
String t2 = priceEt.getText().toString();
if(t1.isEmpty() || t2.isEmpty()) {
Functions.message(this, "Enter both fields");
}
else {
long id = helper.insertData(t1, t2);
if (id<=0) {
Functions.message(this, "Unsuccessful");
}
else {
Functions.message(this, "Inserted!");
}
}
class myDataBaseAdapter {
private myDataBaseHelper myhelper;
myDataBaseAdapter(Context context) {
myhelper = new myDataBaseHelper(context);
}
long insertData(String name, String price) {
long id;
SQLiteDatabase db = myhelper.getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put(myDataBaseHelper.NAME, name);
contentValues.put(myDataBaseHelper.PRICE, price);
id = db.insert(myDataBaseHelper.TABLE_NAME, null, contentValues);
return id;
}
static class myDataBaseHelper extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "myDataBase";
private static final String TABLE_NAME = "myTable";
private static final int DATABASE_VERSION = 1;
private static final String UID = "_id";
private static final String NAME = "Name";
private static final String PRICE = "Price";
private static final String CREATE_TABLE = "CREATE TABLE "+DATABASE_NAME+" ("+UID+" INTEGER PRIMARY KEY AUTOINCREMENT, "+NAME+" VARCHAR(255), "+PRICE+" VARCHAR(255));";
private static final String DROP_TABLE = "DROP TABLE IF EXISTS "+TABLE_NAME;
private Context context;
myDataBaseHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
this.context = context;
Functions.message(context, "constructor called");
}
@Override
public void onCreate(SQLiteDatabase db) {
try {
db.execSQL(CREATE_TABLE);
Functions.message(context, "onCreate called");
} catch (SQLException e) {
Functions.message(context, ""+e);
}
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
try {
db.execSQL(DROP_TABLE);
Functions.message(context, "onUpgrade called");
onCreate(db);
} catch (SQLException e) {
Functions.message(context, ""+e);
}
}
}
}
Функция сообщения - это просто простое сообщение, чтобы помочь мне.Я использую Android Studio, если это имеет какое-либо значение.как я могу исправить это