SQL Server字符串截断错误:显示列名依赖版本还是需开启设置?
字符串截断错误显示列名的条件
当字符串或二进制数据长度超过表中列的限制时,SQL Server是否在错误信息中显示被截断的列名,既取决于版本,也需要开启特定设置:
- 版本要求:该功能从SQL Server 2016(13.x)SP2和SQL Server 2017(14.x)CU12开始支持,更早版本无法显示列名。
- 设置要求:需要启用数据库级别的
STRING_TRUNCATION_LEVEL选项,将其设置为1(默认值为0)。执行以下命令开启:ALTER DATABASE [你的数据库名] SET STRING_TRUNCATION_LEVEL = 1;
开启后,再触发截断错误时,错误信息会包含具体列名,示例如下:
String or binary data would be truncated in table 'dbo.YourTable', column 'YourColumn'. Truncated value: '被截断的内容片段'.
内容的提问来源于stack exchange,提问作者Acavier
相关产品推荐
相关产品推荐

