[英]no such column name error
我定义了列名。 但是我遇到这个错误。 我检查了每件事。 我找不到此错误的原因。
try {
myDB = this.openOrCreateDatabase("DatabaseName", MODE_PRIVATE, null);
/* Create a Table in the Database. */
myDB.execSQL("CREATE TABLE IF NOT EXISTS "
+ TableName
+ " (" +
"name TEXT, " +
"number TEXT" +
");"
);
/* Insert data to a Table*/
myDB.execSQL("INSERT INTO "
+ TableName
+ "(name,number)"
+ " VALUES (name,number)");
// retrieve data from database
Cursor c = myDB.rawQuery("SELECT * FROM " + TableName , null);
// Check if our result was valid.
c.moveToFirst();
while(c.moveToNext())
{
Log.i("error",c.getString(0));
Log.i("error",c.getString(1) );
contactname.add(c.getString(c.getColumnIndex("name")));
contactnumber.add(c.getString(c.getColumnIndex("number")));
}
问题是
/* Insert data to a Table*/
myDB.execSQL("INSERT INTO "
+ TableName
+ "(name,number)"
+ " VALUES (name,number)");
尝试插入名称和数字,因为它们都不是字符串,所以都被标识为列名称。 您应该像这样插入它:
/* Insert data to a Table*/
myDB.execSQL("INSERT INTO "
+ TableName
+ "(name, number)"
+ " VALUES (\"name\",\"number\")");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.