我不知道发生了什么。
这是我的代码:
public class MyApp extends MainScreen {
Database sqliteDB;
URI uri;
String name;
public MyApp()
{
try{
uri = URI.create("file:///SDCard/Databases/sample/" +"prueba.db");
sqliteDB = DatabaseFactory.create(uri);
sqliteDB = DatabaseFactory.open(uri);
Statement st = sqliteDB.createStatement("CREATE TABLE joke(name)");
st.prepare();
st.execute();
st.close();
Statement st1 = sqliteDB.createStatement("INSERT INTO joke VALUES ('Maxo')");
st1.prepare();
st1.execute();
st1.close();
Statement st2 = sqliteDB.createStatement("INSERT INTO joke VALUES ('Lala')");
st2.prepare();
st2.execute();
st2.close();
/*
Statement st1 = sqliteDB.createStatement("SELECT * from joke");
st1.prepare();
Cursor c = st1.getCursor();
Row r;
while(c.next()) {
r = c.getRow();
name = r.getString(0);
}
st1.execute();
st1.close();*/
sqliteDB.close();
add(new RichTextField("Status: Database was created and inserted the values successfully"));
//add(new RichTextField(""+name));
}
catch (Exception e){
System.out.println(e.getMessage());
e.printStackTrace();
}
}
}
我只是创建一个数据库,一个表并插入两个字段。所以我要做的是首先执行模拟器,将目录设置为我的SD卡。那之后,我执行我的程序,有时它创建数据库,有时不是,有时它创建数据库没有表或数据..我不知道为什么,我尝试8520 9550模拟器,但它的罕见什么发生在数据库和SD卡。任何人都知道可能会发生什么?它很烦人的编码,有时它的工作有时不会,你不知道为什么..而且我认为它不是编码问题,因为有时它有效:S
答案 0 :(得分:1)
确保已安装SD卡。双击要保存数据库的文件夹,然后勾选复选框,以便在下次模拟器运行时重新安装。
希望它有所帮助。