【问题标题】:Entity Framework String would be truncated Error实体框架字符串将被截断错误
【发布时间】:2012-08-24 02:35:54
【问题描述】:

我有一个平面文件 SQL Server 数据库。我正在尝试将信息插入表中,但每次运行时都会收到“字符串或二进制数据将被截断”错误。我所有的文本字段都是 nvarchar(max),但它仍然会抛出错误,我可以查看数据,并且没有超过 8192 个字符。老实说,我认为没有任何东西超过 256。

有什么想法吗?

如果重要的话,我正在使用 Visual Studio 11 和 Entity Framework 4。

【问题讨论】:

  • 我会通过删除字段来诊断此问题,直到它起作用,然后您可以查看有问题的实际字段。
  • 我会使用 SQL 分析器并捕获有问题的查询。然后您可以检查哪些字段作为字符串传递,以及字符串的参数是否具有正确的长度。

标签: sql-server entity-framework truncated


【解决方案1】:

SQL Server 2019 应生成不同的错误消息,其中包含导致冲突的表和列

错误消息 ID 8152 已替换为错误 2628,现在包含将被截断的列和字符串值。 “字符串或二进制字符串将在表、列中被截断。截断值:”

另见https://blogs.msdn.microsoft.com/sql_server_team/string-or-binary-data-would-be-truncated-replacing-the-infamous-error-8152/

请注意,目前,即使在 SQL Server 2019 CTP 2.0 中,也需要启用相同的跟踪标志 460。在未来的 SQL Server 2019 版本中,消息 2628 将默认替换消息 8152。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-01
    • 1970-01-01
    • 2012-12-12
    • 2017-08-14
    • 2017-03-28
    • 2015-04-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多