2016-04-11 121 views
1

无法将值NULL插入'描述...'列无法将值NULL插入'描述

任何人都可以帮助我吗?请高度赞赏.. 这里是我的小巧代码插入说明,数量,成本和HSCode,只有说明Colume不工作,说插入价值NULL列'说明。

public void CreateIncomingShipmentLine(IncomingShipmentLine incomingShipmentLine) 
{ 
    DbConnection _Connection = new SqlConnection(Constant.DatabaseConnection); 
    _Connection.Open(); 

    // IncomingShipmentLine 

    string myIncomingShipmentLineQuery = "INSERT INTO IncomingShipmentLine(Description, Quantity, Cost, HSCode) VALUES (@Description, @Quantity, @Cost, @HSCode)"; 

    _Connection.Execute(myIncomingShipmentLineQuery, new 
                { 
                 Description = incomingShipmentLine.Description, 
                 Quantity = incomingShipmentLine.Quantity, 
                 Cost = incomingShipmentLine.Cost, 
                 HSCode = incomingShipmentLine.HSCode 
                }); 
    _Connection.Close(); 
} 
+1

看起来你'Description'列不允许空和你实际提供这样的价值在incomingShipmentLine的'Description'属性中。要么你应该正确填充对象,不要使用非空值,要么应该将值重写为某个空字符串,否则应该将列更改为接受空值。 –

+0

非常感谢你 - Jakub Szumiato,它的工作...... :) - Namaraj Giri –

回答

1

插入前使用ISNULL属性。

如果是NULL插入empty值,而不是NULL,因为你的Description coulmn是NOT NULL

试试这个

public void CreateIncomingShipmentLine(IncomingShipmentLine incomingShipmentLine) 
{ 
    DbConnection _Connection = new SqlConnection(Constant.DatabaseConnection); 
    _Connection.Open(); 

    // IncomingShipmentLine 

    string myIncomingShipmentLineQuery = "INSERT INTO IncomingShipmentLine(Description, Quantity, Cost, HSCode) VALUES (ISNULL(@Description,''), @Quantity, @Cost, @HSCode)"; 

    _Connection.Execute(myIncomingShipmentLineQuery, new 
                { 
                 Description = incomingShipmentLine.Description, 
                 Quantity = incomingShipmentLine.Quantity, 
                 Cost = incomingShipmentLine.Cost, 
                 HSCode = incomingShipmentLine.HSCode 
                }); 
    _Connection.Close(); 
} 
+0

谢谢@Mark对你的帮助..... :) –

+0

@NamarajGiri快乐编程 –