0

重複の可能性:
SQLiteデータベースへの挿入中にエラーが発生しました

こんにちは.............私はAndroidを初めて使用します。現在、Androidデータベースを使用しています。メソッドを呼び出して、ハードコードされた値をデータベースに挿入したいと思います。

     public void insertdata(String ti, String de) {
    ContentValues userdetailValues = new ContentValues(); 
    userdetailValues.put("tick", ti);
    userdetailValues.put("des",de);
    dh.insert(DatabaseHelper.TABLE_NAME, null, userdetailValues);
    } 

上記のメソッドは、onCreate()ブロックのアクティビティで定義されています。onCreate()ブロック内でこのメソッドを呼び出す場合

 insetdata(aaa,bbb);

それからそれは私のためにエラーを示します-

    aaa can not be resolve to variable and same for bbb.

私がAndroidを初めて使用することを伝えたように、非常に恐れています。その場合、それが小さな問題である場合は、私を助けてください。私は単なる学習者です。よろしくお願いします。

4

4 に答える 4

1

関数で文字列値を渡しているので、二重引用符で試すか、aaaおよびbbb文字列変数を作成して値を割り当ててください。

insetdata("aaa","bbb");

また

String aaa = "test", bbb = "testy";
insetdata(aaa,bbb);

編集-値を挿入する前にdhオブジェクトを初期化し、データベースを開き、使用後に閉じる必要があります。

于 2012-11-21T06:43:43.560 に答える
1

これらの行に問題がある可能性があります

userdetailValues.put("tick", ti);
userdetailValues.put("des",de);

「tick」と「des」を使用する代わりに、データを追加する必要がある列名を使用します。あなたのコードは次のようになります

 public void insertdata(String ti, String de) {
ContentValues userdetailValues = new ContentValues(); 
userdetailValues.put(DatabaseHelper.C1, ti);
userdetailValues.put(DatabaseHelper.C2,de);
dh.insert(DatabaseHelper.TABLE_NAME, null, userdetailValues);
}
于 2012-11-22T05:22:13.217 に答える
0

これは、関数に渡す変数がそのスコープでは無効であるためです。ハードコードされた値を挿入してみましたか。

好き:

  insetdata("aaa","bbb");
于 2012-11-21T06:42:59.067 に答える
0

これを試して

public void addContact(Contact contact) {
        SQLiteDatabase db = this.getWritableDatabase();

        ContentValues values = new ContentValues();
        values.put(KEY_NAME, contact.getName()); // Contact Name
        values.put(KEY_PH_NO, contact.getPhoneNumber()); // Contact Phone Number

        // Inserting Row
        db.insert(TABLE_CONTACTS, null, values);
        db.close(); // Closing database connection
    }
于 2012-11-21T06:47:30.700 に答える