我只是在学习Android。我有一段使用ContentValues的代码:
我的常数:
public static final String TABLE_NAME = "numbers";
public static final String COL_ID = "_id";
public static final String COL_NUMBER = "number";
这样我创建表:
db.execSQL( "CREATE TABLE " + TABLE_NAME + "( " + COL_ID +
" integer primary key autoincrement, " + COL_NUMBER +
" integer not null );" );
这样我就在表格中添加了值:
ContentValues values = new ContentValues();
values.put( SQLHelper.COL_NUMBER, 1 );
long id = db.insert( SQLHelper.TABLE_NAME, null, values );
它可以工作,但是当我用rawQuery替换插入时,它不会再插入到表中了:
db.rawQuery( "INSERT INTO " + SQLHelper.TABLE_NAME + " VALUES( NULL, 1 )", null );
我在哪里犯错?
感谢。
答案 0 :(得分:1)
db.rawQuery - >运行提供的SQL并在结果集上返回Cursor。
db.execSQL - >执行一个不是SELECT / INSERT / UPDATE / DELETE的SQL语句。