我创建数据库,但是当我运行应用程序时,数据库没有创建,并且catlog中没有错误请帮助我。 并且在fileexplorer / data / data中没有创建文件夹名称数据库 当我在MySQLiteHelper中打印一些东西到控制台时,控制台上没有任何打印。 请提前帮助我。
公共类MySQLiteHelper扩展了SQLiteOpenHelper {
public static final String TABLE_NAME_BOY = "question_boy";
public static final String ID_BOY = "_id";
public static final String QUESTION_BOY = "questions";
public static final String ANSWER_BOY = "answer";
public static final String TABLE_NAME_GIRL = "questions_girl";
public static final String ID_GIRL = "_id";
public static final String QUESTION_GIRL = "questions";
public static final String ANSWER_GIRL = "answer";
private static final String DATABASE_NAME = "bg.database";
private static final int DATABASE_VERSION = 3;
private static final String CREATE_TABLE_BOY = "create table "
+ TABLE_NAME_BOY + "(" + ID_BOY
+ "integer primary key autoincrement, " + QUESTION_BOY + " text, "
+ ANSWER_BOY + " text);";
private static final String CREATE_TABLE_GIRL = "create table "
+ TABLE_NAME_GIRL + "(" + ID_GIRL
+ "integer primary key autoincrement, " + QUESTION_GIRL + " text, "
+ ANSWER_GIRL + " text);";
public MySQLiteHelper(Context context, String name,
CursorFactory factory, int version) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
// TODO Auto-generated constructor stub
}
@Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
db.execSQL(CREATE_TABLE_BOY);
db.execSQL(CREATE_TABLE_GIRL);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
Log.w(MySQLiteHelper.class.getName(),
"Upgrading database from version " + oldVersion + " to "
+ newVersion + ", which will destroy all old data");
db.execSQL("DROP TABLE IF EXISTS" + TABLE_NAME_BOY);
db.execSQL("DROP TABLE IF EXISTS" + TABLE_NAME_GIRL);
onCreate(db);
}
}
答案 0 :(得分:0)
答案 1 :(得分:0)
这应该为你创建一个数据库......
public class DBHandler extends SQLiteOpenHelper {
private SQLiteDatabase sqliteDatabaseInstance_ = null;
public DBHandler(Context context){
super(context, "TESTDATABASE.db", null, 1);
sqliteDatabaseInstance_ = getWritableDatabase();
sqliteDatabaseInstance_.execSQL("PRAGMA foreign_keys = ON;");
}
@Override
public void onCreate(SQLiteDatabase db) {
try {
db.execSQL("CREATE TABLE ACCOUNT (accountId INTEGER PRIMARY KEY, name TEXT)");
db.execSQL("CREATE TABLE ORDER_DETAILS (orderNo INTEGER, accountId INTEGER," +
"FOREIGN KEY (accountId) REFERENCES ACCOUNT(accountId))");
}catch (SQLiteConstraintException sqliteConstraintException) {
System.out.println("sqliteConstraintException: " + sqliteConstraintException.getMessage());
}catch (Exception e) {
System.out.println("Exception in DBHandler.onCreate: "+e.getMessage());
}
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {}
}
你的db文件应该在.........
之下转到文件资源管理器----->数据------>数据------> com.test -----> TESTDATA.db
希望这有帮助。