2

我有一个定义为 varchar(20) 的 SQL Server 电话号码字段。像“800-555-1212”这样的电话号码没有问题,但像“(800) 555-1212”这样的电话号码会导致“数据将被截断”错误。为什么会这样?

4

2 回答 2

4

该示例可以很好地插入以这种方式定义的字段(我运行了一个测试)。

您可能会添加一些不可见的字符,例如制表符和回车符。

或者,您可能有一个基于该字段(我们有一个 phone_number_stripped 字段仅存储数字)的计算字段(或触发器中的代码),该字段已考虑了剥离 - 但不是(或)。

于 2012-06-21T21:05:53.820 回答
3

一个值可以“像”那个值,但在两端用空格填充。

确保您的软件能够处理这种情况。我建议允许空间,但自动修剪它。

于 2012-06-21T21:04:24.367 回答