我正在尝试将一些数据插入到现有的SQLite表中。表和数据库是使用相同的API创建的,但由于某些原因,插入不起作用,并且从不给我错误消息。
我正在BlackBerry 9550模拟器上进行测试。
这是我的问题:
final String insertQuery
= "INSERT INTO 'Auth'( "
+ "'" + USER_ID_KEY + "', "
+ "'" + USER_NAME_KEY + "', "
+ "'" + USER_PASSWORD_KEY + "' ) "
+ "VALUES ( "
+ userId + ", "
+ "'" + username + "', "
+ "'" + password + "' ) ";
我用来运行它的代码:
final Statement insertOrUpdateStatement;
insertOrUpdateStatement
= database.createStatement(insertQuery);
insertOrUpdateStatement.prepare();
insertOrUpdateStatement.execute();
insertOrUpdateStatement.close();
它执行得很好,我没有收到任何错误消息,但数据从未插入。我使用了3种不同的SQLite浏览器和BlackBerry API来确认这一点。
我也尝试过使用显式交易,但这也不起作用。我搜索过类似的问题,在这段代码上尝试了很多变化,没有任何效果。帮助
答案 0 :(得分:2)
我假设这是因为你的表和字段周围有过多的单引号。您是否尝试从插入语法中删除引号,例如
final String insertQuery
= "INSERT INTO Auth(USER_ID_KEY,USER_ID_KEY,USER_PASSWORD_KEY) "
+ "VALUES ("
+ userId + ", "
+ "'" + username + "', "
+ "'" + password + "' ) ";