0

我正在为 wp8 使用 sqlite-net。我正在尝试在表中插入一行,但出现运行时错误,提示该列不存在。当我在该行之前放置一个断点并遍历数据库变量时,我可以看到表和列,所以我不确定发生了什么。这是代码:

db.BeginTransaction();
                db.Query<Entry>("insert into Entry(desc, date) values (calories = 100, desc = 'food', date = '5/26/13')");
                db.Commit();

public class Entry
{
    [SQLite.AutoIncrement, SQLite.PrimaryKey, SQLite.Column("id")]
    public int id { get; set; }

    [SQLite.Column("calories")]
    public int calories { get; set; }

    [SQLite.Column("desc")]
    public string desc { get; set; }

    [SQLite.Column("date")]
    public string date { get; set; }
}

在此处输入图像描述 在此处输入图像描述

4

2 回答 2

0

尝试

db.BeginTransaction();
db.Insert(new Entry() {
                    calories = 100,
                    desc ='food',
                    date = '5/26/13'
            });
db.Commit();
于 2013-05-26T17:53:51.070 回答
0

您在 SQL 查询中提到两列,然后是三列:

[...] (desc, date) [...] (calories = 100, desc = 'food', date = '5/26/13')

正确的查询是:

insert into Entry (calories, desc, date) values (100, 'food', '5/26/13')
于 2013-05-26T17:35:34.913 回答