Android 它没有';不要写超过3个表
我为我的Android应用程序创建了这个类:Android 它没有';不要写超过3个表,android,sql,database,sqlite,Android,Sql,Database,Sqlite,我为我的Android应用程序创建了这个类: public class Database extends SQLiteOpenHelper{ private static final String DB_NAME = "db"; private static final int DB_VERSION = 1; public Database(Context context) { super(context,DB_NAME, null, DB_VERSI
public class Database extends SQLiteOpenHelper{
private static final String DB_NAME = "db";
private static final int DB_VERSION = 1;
public Database(Context context) {
super(context,DB_NAME, null, DB_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
String table1="CREATE TABLE users(";
table1+="_id TEXT PRIMARY KEY,";
table1+="city TEXT NOT NULL,";
table1+="name TEXT NOT NULL,";
table1+="info TEXT);";
String table2 = "CREATE TABLE things(";
table2+="id TEXT PRIMARY KEY);";
String table3 = "CREATE TABLE rec(";
table3+="id TEXT PRIMARY KEY,";
table3+="text TEXT NOT NULL,";
table3+="rate INTEGER NOT NULL);";
String table4 = "CREATE TABLE avg(";
table4+="mct TEXT PRIMARY KEY,";
table4+="rec INTEGER NOT NULL,";
table4+="avgrate FLOAT NOT NULL);";
db.execSQL(table1);
db.execSQL(table2);
db.execSQL(table3);
db.execSQL(table4);
}
}
它不会将table4写入本地SQLite数据库。如果我向任何以前的db.execSQL(tableX)添加注释,它都可以工作。
例如,如果我注释db.execSQL(表2),它将写入表1、表3和表4。
如果我删除注释,它将写入表1、表2、表3。。。没有表4。。。为什么?
似乎它最多只能写3个表。可能吗
avg
在SQLite中是一个保留字,所以最好重命名上一个表 avg
在SQLite中是一个保留字,所以最好重命名上一个表 完成。。。没有任何更改,它也不能更改,因为正如我所说的,如果我对以前的任何表write…FWIW进行注释,我可以编写table4,使用函数名作为表名不是语法错误。函数由它们的()
参数标识。完成。。。没有任何更改,它也不能更改,因为正如我所说的,如果我对以前的任何表write…FWIW进行注释,我可以编写table4,使用函数名作为表名不是语法错误。函数由它们的()
参数标识。如何确定哪些表是“已写”的,哪些表不是?我使用Android的SQLite Editor应用程序。将列文本
更改为表3中的另一个名称。该应用程序可能无法工作。检查代码中的表。完成。。。没有任何变化,正如我在问题中所说的,如果我对以前的任何db.execSQL(tableX)进行注释,我可以编写table4;如何确定哪些表是“编写”的,哪些表不是?我使用Android的SQLite Editor应用程序。将列文本
更改为表3中的另一个名称。该应用程序可能无法工作。检查代码中的表。完成。。。没有任何变化,正如我在问题中所说的,如果我对以前的任何db.execSQL(tableX)进行注释,我可以编写table4;