【发布时间】:2018-02-20 03:40:44
【问题描述】:
我的查询有问题 这是我的 sqllite 表
CREATE_CONFIG_TABLE = "CREATE TABLE " + TABLE_Config + "("
+ KEY_ID + " INTEGER PRIMARY KEY AUTOINCREMENT,"
+ KEY_VersioneAPP + " TEXT"
+ ")";
在哪里
private static final String TABLE_Config = "Configurazioni";
private static final String KEY_VersioneAPP = "VersioneAPP";
我想更新“VersioneAPP”并进行如下查询:-
db.rawQuery("UPDATE " + TABLE_Config + " SET " + seleziona + " = ?",
new String[] { NuovaVersione });
我也试过了
String selezionata = "UPDATE " + TABLE_Config + " SET (" + seleziona + ") = ('"+ NuovaVersione+"')";
db.execSQL(selezionata);
NuovaVersione 是一个字符串,如 10.2.3 或 1.2 如果我使用 NuovaVersione=1.2 进行查询,它会起作用。 但如果我尝试使用 10.2.3,我会收到以下错误:
致命异常:主要
进程:it.asfautolinee.pulizie,PID:15890 java.lang.RuntimeException:无法启动活动 组件信息{it.asfautolinee.pulizie/it.asfautolinee.pulizie.Login}: android.database.sqlite.SQLiteException:接近“.3”:语法错误(代码 1): ,编译时:UPDATE Configurazioni SET VersioneAPP = 10.2.3################################################# ######### 错误代码:1(SQLITE_ERROR) 原因:SQL(查询)错误或丢失database.(near ".3": syntax error (code 1): , while compile: UPDATE 配置 SET VersioneAPP = 10.2.3)
有人可以帮帮我吗?
【问题讨论】: