我有这个字符串“SP-CTe-10-10-2012”。SQL 插入给出此错误“字符串或二进制文件将被截断,”
我试过这个:
string verapli1 = _infProt_verAplic.ToString();
string verapli2 =verapli1.Substring (verapli1.Length ,20);
减少字符串的长度,但这段代码也有错误。
我有这个字符串“SP-CTe-10-10-2012”。SQL 插入给出此错误“字符串或二进制文件将被截断,”
我试过这个:
string verapli1 = _infProt_verAplic.ToString();
string verapli2 =verapli1.Substring (verapli1.Length ,20);
减少字符串的长度,但这段代码也有错误。
您的列字符串长度低于您的字符串长度。
增加数据类型长度(尝试将列类型更改为varchar(20)
)或在插入前减少值的长度。
这是一个 SQL Server 错误 - 意味着您的字符串不适合您尝试插入的字段。顺便说一句,不要将日期存储为字符串 - 这是糟糕的设计。
它应该是,
string verapli1 = _infProt_verAplic.ToString();
if(verapli1.Length > 20)
verapli1 =verapli1.Substring (0,20);
问题是列 nvarchar(15) 的 SQL 长度,当我编写分配给变量的过程时
alter proc probandodata (@dhre nvarchar(30))as
insert into ctrc5 (veraplic,numero)
values(@dhre,5555555)
我只将 dhre 调整为 nvarchar 到 @dhre nvarchar(15) 并且工作正常。谢谢。