SQLite数据库插入错误约束

本文关键字:约束 错误 插入 数据库 SQLite | 更新日期: 2023-09-27 18:23:40

我正在进行一个web服务调用,该调用返回一个包含50个数据包的消息bean。然后我以以下方式将其放入我的SQLite

public void DashboardHandler(Array Bean, long cNum)
    {
        foreach (invoiceSummaryBean ib in Bean)
        {
            var dash = new dashboardCustomer
            {
                actualUsage = ib.actualUsage,
                serviceCost = ib.serviceCost,
                mmbtu = ib.mmbtu,
                OptiServiceCost = ib.optimizedServiceCost,
                period = ib.period,
                periodType = ib.periodType,
                service = ib.service,
                serviceType = ib.serviceType,
                measure = ib.unitOfMeasure,                    
                customerNumber = cNum
            };
            try
            {
                db.insertDashboard(dash);
            }
            catch
            {
            }
        }
    }

我的插入方法

public async Task insertDashboard(dashboardCustomer d)
    {
        try
        {
            await db.InsertAsync(d);
        }
        catch(SQLiteException)
        {
            throw;
        }
    }

我的表

[Table("dashboardCustomer")]
public class dashboardCustomer
{
    public long customerNumber { get; set; }        
    public int period { get; set; }
    public string periodType { get; set; }
    public string service { get; set; }
    public double actualUsage { get; set; }
    public double mmbtu { get; set; }
    public double OptiServiceCost { get; set; }        
    public double serviceCost {get; set;}        
    public string serviceType { get; set; }        
    public string measure { get; set; }

}

当它试图插入时,它崩溃了,说{"Constraint"}?

不确定问题出在哪里。我需要把所有50个数据包都插入表中。

SQLite数据库插入错误约束

我发现了这个问题的问题。我不得不改变表格的创建方式。奇怪的是,每次插入新数据时都必须重新创建它。