我在使用Xamarin在Android应用程序中更新sqlite数据库中的记录时遇到问题。这是表CREATE:
CREATE TABLE [tickets] (key ntext, json ntext, last_refreshed text)
这是UPDATE语句:
UPDATE [tickets] SET [json]=@json AND [last_refreshed] = datetime('now') WHERE [key] = @key
这是我编写数据的代码。我已经确认“data”和“key”变量中的数据是所需的数据,并且TICKET_TABLE_UPDATE常量是正在使用的常量,但出于某种原因,当我从sqlite数据库中读取记录时,有一个“在json字段中为“0”,并且last_refreshed字段尚未更新。有什么想法吗?
public void WriteTicket(JiraTicket ticket) {
int count = 0;
using (SqliteCommand com = con.CreateCommand()) {
com.CommandText = TICKET_TABLE_COUNT;
com.Parameters.AddWithValue("@key", ticket.Key);
count = int.Parse(com.ExecuteScalar().ToString());
}
using (SqliteCommand com = con.CreateCommand()) {
if (count > 0) {
com.CommandText = TICKET_TABLE_UPDATE;
} else {
com.CommandText = TICKET_TABLE_INSERT;
}
String data = ticket.JSON;
String key = ticket.Key;
com.Parameters.AddWithValue("@key", key);
com.Parameters.AddWithValue("@json", data);
com.ExecuteNonQuery();
}
答案 0 :(得分:0)
替换" AND"在您的更新语句中使用逗号分隔字段更新