当我执行查询时,我得到了这个例外。请找到logcat。
请在此处找到代码。
public static final String CLASS_ID="classid";
public static final String CLASS_NAME="classname";
public static final String TABLE_REMINDMEMASTER="remindmemaster";
public RemindmeDatabase(Context context) {
super(context, KonnectMeDataBase.DATABASE_NAME, null, 1);
// TODO Auto-generated constructor stub
}
//create table remindmemaster table
String CREATE_REMINDME_MASTER="CREATE TABLE remindmemaster(id INTEGER PRIMARY KEY AUTOINCREMENT,"
+"instructions TEXT,rmd_f INTEGER,startdate TEXT,enddate TEXT,timings TEXT,"
+" pid INTEGER,sync_f INTEGER,capturetime TEXT,serverid TEXT,crte_ts TEXT , updt_ts TEXT)";
logcat的:
12-10 16:56:29.093: E/RemindMeDB(25575): remindmemaster Row Inserted at
12-10 16:56:29.094: E/checkServeridExist(25575): serverid---0
12-10 16:56:29.094: E/checkServeridExist(25575): localServerId---null
12-10 16:56:29.095: E/SQLiteLog(25575): (1) no such table: remindmemaster
12-10 16:56:29.101: E/SQLiteDatabase(25575): Error inserting serverid= updt_ts=2014-12-10 16:56:29 rmd_f=0 startdate=10-12-2014 instructions=hiii capturetime=16:56:29 timings=16:24,16:25, pid=0 crte_ts=2014-12-10 16:56:29 enddate=30-12-2014 sync_f=0
12-10 16:56:29.101: E/SQLiteDatabase(25575): android.database.sqlite.SQLiteException: no such table: remindmemaster (code 1): , while compiling: INSERT INTO remindmemaster(serverid,updt_ts,rmd_f,startdate,instructions,capturetime,timings,pid,crte_ts,enddate,sync_f) VALUES (?,?,?,?,?,?,?,?,?,?,?)
12-10 16:56:29.101: E/SQLiteDatabase(25575): at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method)
12-10 16:56:29.101: E/SQLiteDatabase(25575): at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:882)
12-10 16:56:29.101: E/SQLiteDatabase(25575): at android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:493)
12-10 16:56:29.101:
E/SQLiteDatabase(25575): at android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:588)
答案 0 :(得分:0)
您在设备中安装应用程序一次后,或者未正确创建应用程序,就添加了此创建表调用。
在表名和括号之间添加一个空格:
String CREATE_REMINDME_MASTER="CREATE TABLE remindmemaster (id INTEGER PRIMARY KEY AUTOINCREMENT,"
+"instructions TEXT,rmd_f INTEGER,startdate TEXT,enddate TEXT,timings TEXT,"
+" pid INTEGER,sync_f INTEGER,capturetime TEXT,serverid TEXT,crte_ts TEXT , updt_ts TEXT)";
另外,清除数据,卸载,然后重新运行应用程序并检查。这应该有用。
希望这会有所帮助。 :)
答案 1 :(得分:0)
最后我得到了答案,当数据库字段不匹配并将值发送到数据库字段顺序时,那个时候会出现这种类型的错误。 提出此错误时,请查看这些详细信息。
1)检查数据库字段的顺序和发送方法字段(插入字段顺序)。
2)检查此查询是否已执行。
3)检查" onCreate(SQLiteDatabase db)"我们的查询是否已在此方法中注册。