0

私はちょうど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 );

どこで間違えますか?

ありがとう。

4

1 に答える 1

1

db.rawQuery --> 提供された SQL を実行し、結果セットに対して Cursor を返します。

db.execSQL--> SELECT/INSERT/UPDATE/DELETE ではない単一の SQL ステートメントを実行します。

于 2012-07-04T10:20:26.563 に答える