2016-12-07 7 views
0

SELECT、私は宿題を持っているが、それはいくつかのエラーを持っている、私を助けてください、ここで私はコードです:そのようなコラムません:ID(CODE1):、complingながら:私の英語のため申し訳ありません*

private void initUI() { 
    // TODO Auto-generated method stub 
    Intent i =getIntent(); 
    String id =i.getStringExtra("ID"); 
    SQLiteDatabase database = Database.initDatabase(this, DB_NAME); 
    Cursor cursor = database.rawQuery("SELECT * FROM Student WHERE ID = "+id,null); 
    cursor.moveToFirst(); 
    String ten = cursor.getString(1); 
    String sdt = cursor.getString(2); 
    String classid = cursor.getString(3); 
    byte[] anh= cursor.getBlob(4); 

    Bitmap bitmap = BitmapFactory.decodeByteArray(anh, 0,anh.length); 
    imgupdate.setImageBitmap(bitmap); 
    edtid.setText(id); 
    edtname.setText(ten); 
    edtsdt.setText(sdt); 


} 

とエラー私の英語(T_T)

テーブルのため申し訳ありません

12-07 22:55:13.831: E/AndroidRuntime(15694): FATAL EXCEPTION: main 
12-07 22:55:13.831: E/AndroidRuntime(15694): Process: com.example.assignment_android_ps04360, PID: 15694 
12-07 22:55:13.831: E/AndroidRuntime(15694): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.assignment_android_ps04360/com.example.assignment_android_ps04360.UpdateActivity}: android.database.sqlite.SQLiteException: no such column: ID (code 1): , while compiling: SELECT * FROM Student WHERE ID = PS04107 
12-07 22:55:13.831: E/AndroidRuntime(15694): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2299) 

Table.png

+0

Studentテーブルを正しく定義しましたか? – codeMan

+1

生徒のテーブルを表示できますか? – Gatusko

+2

単にIDテーブルの列がStudentテーブル内に存在しないというエラーを示します。 –

答えて

0

これを簡単にデバッグするには、プログラムに入れる前にsqliteに対して直接クエリを実行する方法があります。

ここで問題となるのは、IDと比較される値が引用符付きの文字列ではないことです。あなたはより多くの

SELECT * FROM Student WHERE ID = 'PS04107' 

のではなく、あなたがすべき文字列pass selectionArgs to the query methodとしてクエリを構築するようなものを作成する必要があります。

関連する問題