【发布时间】:2012-11-06 10:53:07
【问题描述】:
我在 C# Winforms 2010 中的项目并使用 SQL Server express 和 Linq-to-SQL。我的项目让我例外:
INSERT 语句与 CHECK 约束“CK_BarCode_Num”冲突。冲突发生在数据库“Parking”、表“dbo.TBL_Cards”、列“BarCode_Num”
当我运行这个查询时:
SELECT name, definition
FROM sys.check_constraints
WHERE name = 'CK_BarCode_Num'"
输出显示以下定义:
Name: CK_BarCode_Num
Definition: (datalength([BarCode_Num])=(13))"
但在数据库中的TBL_Cards 中,BarCode_Num 的类型为varchar(100),在后面的代码中,我声明int 的类型为BarCode_Num。
不知道datalength([BarCode_Num])=(13)在哪里设置?
【问题讨论】:
-
代码中的BarCode_Num 应该是一个字符串
-
我确实在代码中设置了这个,让我例外:“INSERT 语句与 CHECK 约束“CK_BarCode_Num”冲突。冲突发生在数据库“Parking”、表“dbo.TBL_Cards”、列“ BarCode_Num'。语句已终止。"
标签: c# sql database winforms linq-to-sql