我如何在Sqflite中为Flutter使用准备好的语句

时间:2019-06-03 05:16:13

标签: sqlite flutter dart sqflite

如何在Flutter的Sqflite中使用准备好的语句? 它似乎缺少某些功能,或者排列完全不同。 目前,我正在使用标准的rawInsert,但是我的字符串有时会中断查询。

2 个答案:

答案 0 :(得分:0)

您可以使用问号语法。

db.rawQuery("SELECT * FROM t WHERE c = ?", [myString]);

答案 1 :(得分:0)

我正在使用rawInsert进行交易。在此代码中,如果存在现有记录,将忽略插入。

return await Storage.database.transaction((txn) async {
      await txn.rawInsert('INSERT OR IGNORE INTO $tableName(id, sender_id, recipient_id, message_id, message)' + 'VALUES("$id", "$senderId", "$recipientId", "$messageId", "$message")');
}).catchError((e) {
      throw (e);
});