我创建了android SQLite数据库,但无法找到创建的表。 以下是我实现的代码。什么似乎是问题审查和反馈。
public static final int Database_version = 2
private static final String SQL_CREATE_ENTRIES =
"CREATE TABLE " + TableData.TableInfo.TABLE_NAME + " (" +
TableData.TableInfo.USER_ID + " INTEGER PRIMARY KEY," +
TableData.TableInfo.USER_PASS +" TEXT "+ "," +
TableData.TableInfo.USER_EMAIL +" TEXT "+ ")";
public DatabaseOperations(Context context) {
super(context, TableData.TableInfo.DATABASE_NAME, null, Database_version);
Log.d("Tag", "Database created");
};
@Override
public void onCreate(SQLiteDatabase sdb) {
sdb.execSQL(SQL_CREATE_ENTRIES);
Log.d("Tag", "Table created");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
}
public void putInformation(DatabaseOperations drop, String name, String pass, String email) {
SQLiteDatabase SQ = drop.getWritableDatabase();
ContentValues cv = new ContentValues();
cv.put(TableData.TableInfo.USER_ID, name);
cv.put(TableData.TableInfo.USER_PASS, pass);
cv.put(TableData.TableInfo.USER_EMAIL, email);
long k = SQ.insert(TableData.TableInfo.TABLE_NAME, null, cv);
Log.d("Tag", "inert a row");
}
public Cursor getInformation(DatabaseOperations dop) {
SQLiteDatabase SQ = dop.getReadableDatabase();
String[] coloumns = {TableData.TableInfo.USER_ID, TableData.TableInfo.USER_PASS, TableData.TableInfo.USER_EMAIL};
Cursor CR = SQ.query(TableData.TableInfo.TABLE_NAME, coloumns, null, null, null, null, null);
return CR;
}
}
答案 0 :(得分:1)
我相信你最后错过了引号内的分号(在括号后面)。编辑:在开括号之前还有一个空格。我不认为应该在那里。在#34; INTEGER PRIMARY KEY"之后的逗号之后没有空格。 " TEXT"之间有一个空格。以及#34; USER_PASS"的逗号。最后,我不认为你需要最后一个空格" TEXT" for" USER_EMAIL"。
在创建数据库方面有很多事情,而且SQLite对拼写错误没有容忍度(并且没有给出很多关于它不喜欢的内容的指示)。我希望我能找到所有的拼写错误。这里有一些代码可以尝试(希望我没有添加自己的拼写错误)。
public static final int Database_version = 2
private static final String SQL_CREATE_ENTRIES = "CREATE TABLE " +
TableData.TableInfo.TABLE_NAME +
"(" +
TableData.TableInfo.USER_ID + " INTEGER PRIMARY KEY, " +
TableData.TableInfo.USER_PASS + " TEXT, "+
TableData.TableInfo.USER_EMAIL + " TEXT"+
");";