【发布时间】:2016-03-30 03:53:59
【问题描述】:
我无法弄清楚此错误的含义: SQLiteLog:(1)“s”附近:语法错误 主要是因为我找不到它正在运行的数据库。
我正在构建一个电影数据库 Android 应用程序,我在原始目录中的数据库文件保持不变,我找不到构建运行的数据库来解决这个问题。
使用 OMDB api 时,电影会添加到我的本地数据库中,而有些则不会。
我用来添加的命令是:
MovieDB db = new MovieDB((Context) this);
SQLiteDatabase movDB = db.openDB();
String insert = "insert into movies values('" + movie.title + "','" + movie.year + "','" + movie.rated + "','" + movie.released + "','" + movie.runtime + "','" + movie.genre + "','" + movie.actors + "','" + movie.plot + "',null);";
movDB.execSQL(insert);
我觉得它必须在最后使用 null,因为在我的数据库中我有一个自增 ID,我认为如果我传递 null,它只会分配一个值。
任何见解将不胜感激!
【问题讨论】:
-
在这里观看
,null);";。这可能是因为分号和null。 -
删除,空。 id(假设是整数主键)将设置为唯一值。
-
可能是因为带有未转义的单引号的值导致您的一个字符串出现问题?
-
我认为您应该将
null替换为''
标签: android mysql database sqlite