Android SQLite问题,未找到列

时间:2011-04-15 14:04:14

标签: android sqlite

我正在处理一个应用程序的民意调查部分工作,我不断得到一个例外,说在将值插入数据库时​​找不到我的答案2.

db.execSQL("UPDATE tblPoll SET Question='Who is more awesome?' WHERE rowid=1;");
    db.execSQL("UPDATE tblPoll SET Answer1='Dan' WHERE rowid=1;");
    db.execSQL("UPDATE tblPoll SET Answer2='Peet' WHERE rowid=1;");
    db.execSQL("UPDATE tblPoll SET Answer3='Jordan' WHERE rowid=1;");
    db.execSQL("UPDATE tblPoll SET Answer4='Spencer' WHERE rowid=1;");
    db.execSQL("UPDATE tblPoll SET result1=0 WHERE rowid=1;");
    db.execSQL("UPDATE tblPoll SET result2=0 WHERE rowid=1;");
    db.execSQL("UPDATE tblPoll SET result3=0 WHERE rowid=1;");
    db.execSQL("UPDATE tblPoll SET result4=0 WHERE rowid=1;");
    db.execSQL("UPDATE tblPoll SET resultTotal=0 WHERE rowid=1;");

这是我将代码插入行的代码,它适用于每个答案(团队成员),但Peet除外。我把Peet放在第一个,最后一个,作为第二个,他是唯一一个打破它的人。

private static final String DATABASE_CREATE =
    "CREATE TABLE tblPoll (id INTEGER PRIMARY KEY, " +
    "Question TEXT, Answer1 TEXT, Result1 NUMERIC, " +
    "Answer2 TEXT, Result2 NUMERIC, Answer3 TEXT, " +
    "Result3 NUMERIC, Answer4 TEXT, Result4 NUMERIC, " +
    "ResultTotal NUMERIC);";

这是我制作表格的插入代码。

非常感谢任何帮助。

@ 2red13 我像你一样运行它(正确地填写了所有字段,但它仍然在使用Answer2。

新代码:

ContentValues werte = new ContentValues();  
    werte.put("Answer1", "Dan");
    werte.put("Answer2", "Peet");
    werte.put("Answer3", "Jordan");
    werte.put("Answer4", "Spencer");
    werte.put("Result1", 0);
    werte.put("Result2", 0);
    werte.put("Result3", 0);
    werte.put("Result4", 0);
    werte.put("ResultTotal", 0);
    db.update("tblPoll", werte,"rowid=1",null);

1 个答案:

答案 0 :(得分:0)

我不知道Peet应该失败,但是你执行更新的方式有点慢,试试:

ContentValues werte = new ContentValues();  
werte.put("Answer1", "Dan");
....
werte.put("resultTotal", 0);
db.update("tblPoll", werte,"rowid=1",null);

也许它也解决了Peet问题^^