我想显示3列纬度,经度和地址的数据库。我尝试使用游标,但应用程序崩溃。我正在onlocationchanged方法中为按钮编写监听器。按钮是保存geopoint它更新用户的纬度,经度和地址。我还有一个名为find geopoint的按钮,用于显示数据库。这是我的代码。我在onlocationchanged中写了这个。
try{
db.execSQL("CREATE TABLE "+Geo_Create_Table+" (Latitude INTEGER,Longtitude INTEGER ,ID INTEGER);");
}
catch(Exception e){
e.printStackTrace();
}
try{
db.execSQL("INSERT INTO "+Geo_Create_Table +" VALUES (" +lat +"," +lon +","+1+");");
}
catch (Exception e) {
}
我用光标显示数据库,但问题仍然存在,请帮助
答案 0 :(得分:0)
db.execSQL("CREATE TABLE "+Geo_Create_Table+" (Latitude INTEGER,Longtitude INTEGER ,ID INTEGER)");
db.execSQL("INSERT INTO "+Geo_Create_Table +" VALUES (" +lat +"," +lon +","+1+")");
答案 1 :(得分:0)
你不应该使用execSQL,而应该使用insert方法。
您的请求应包含“?”,并且值应添加为参数
你确定lat和lon是整数吗?
在sqlite中声明Integer列的正确方法是NUMERIC
你应该让sqlite处理ID部分本身
此外,如果您运行两次CREATE TABLE,它将崩溃。如果必须,请运行CREATE TABLE IF NOT NOT EXISTS。
你得到的例外是什么?