我在这里经历了很多例子,但都看起来很复杂,而且大多数都是针对大数据的。我是Android和SQL的新手。我想要做的只是用一些数据预先填充我的SQL数据库。
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE TABLE restaurants (_id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, address TEXT, type TEXT, notes TEXT, feed TEXT, lat REAL, lon REAL);");
ContentValues cv=new ContentValues();
cv.put("name", "Hi");
cv.put("address", "There");
cv.put("type", "delivery");
cv.put("notes", "");
cv.put("feed", "");
cv.put("lat", "");
cv.put("lon", "");
getWritableDatabase().insert("restaurants", "name", cv);
}
没有错误,但遗憾的是没有插入数据。这应该很简单,请帮帮我?
答案 0 :(得分:2)
使用db.insert(“restaurants”,“name”,cv);
答案 1 :(得分:1)
您的方法很好,SQLiteOpenHelper#onCreate()
内部是放置初始数据的正确位置,因为您可以在自己喜欢的状态下创建数据库。
但在onCreate
内,你直接使用db.insert("restaurants", "name", cv)
。您还没有完成创建您尝试通过getWritableDatabase()
获取的可写数据库。不确定这是不是问题,但可能是。