sql-server - “字符串或二进制数据将被截断”

标签 sql-server sql-server-2008 c#-4.0 c#-3.0

我正在使用 Entity Framework 将详细信息插入到数据库中,其中有一列 varchar(50)。 当我尝试插入一些长度超过 50 的值时,它会给我一个错误字符串或二进制数据将被截断。所以,为了安全起见,我只是将其更改为 varchar(100)。

现在有人可以告诉我这是改变数据库中值的唯一解决方案还是我们有其他选择....... 我读了一篇文章http://sqlblogcasts.com/blogs/danny/archive/2008/01/12/scuffling-with-string-or-binary-data-would-be-truncated.aspx

但是我怎样才能在c#中使用这些东西呢?我很感激你的任何建议............

谢谢

最佳答案

根据您正在处理的输入字段类型,使用 varchar(max)可能是一个选择。

但正如前面所指出的,这实际上取决于您的业务需求。

关于sql-server - “字符串或二进制数据将被截断”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5272459/

相关文章:

visual-studio-2010 - 如何在 C# 中设置用作小数点的字符?

html - 在 Asp.net 中从代码隐藏添加 HTML

c# - 通用存储库模式软删除

sql - 'All' 时的情况

sql - SQL Server 中数字的通配符

sql - 在 SQL Server 2008 中执行 View 时出现 "Timeout expired"错误

xml - 使用完整声明将 xml 插入数据库

c# - 将图像转换为 HEX 纯文本,与存储在 SQL Server 中的内容相同

sql-server - 为什么在 DateAdd 中使用硬编码分钟比使用字段值更快?

sql - TSQL:获取数字的字母表示