SQlite写一个0而不是我的数据

本文关键字:我的 数据 一个 SQlite | 更新日期: 2023-09-27 18:17:13

我在使用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

这是我写数据的代码。我已经确认"数据"answers"键"变量中的数据是所需的数据,并且TICKET_TABLE_UPDATE常量是正在使用的数据,但由于某种原因,当我从sqlite数据库读取记录时,json字段中有一个"0",并且last_refreshfield尚未更新。什么好主意吗?

    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();
        }

SQlite写一个0而不是我的数据

将update语句中的"AND"替换为逗号来分隔字段更新