使用rawQuery插入到db

时间:2012-07-04 10:14:37

标签: android sqlite

我只是在学习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 );

我在哪里犯错?

感谢。

1 个答案:

答案 0 :(得分:1)

  

db.rawQuery - >运行提供的SQL并在结果集上返回Cursor。

     

db.execSQL - >执行一个不是SELECT / INSERT / UPDATE / DELETE的SQL语句。