我正在搜索 MS-SQL Server 2005 数据库以确保某个文本字段的长度始终是 8 的倍数。当我运行以下查询时,我得到几行的长度为 30。但是当我调查这些记录时,我发现它们比这更长。
select distinct len(cast(textfield as varchar)) from tablename
但是,如果我将 varchar 的长度指定为更长的长度(如以下查询中所示),它就可以正常工作。
select distinct len(cast(textfield as varchar(1000))) from tablename
有谁知道为什么它默认为 30 以及这是否是可配置的设置?
最佳答案
关于sql-server - 为什么将文本转换为 varchar 而不指定长度会在 30 个字符处截断文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/777394/