我一直对 SQL 字符串列的最大长度需求感到困扰。有些数据没有真正的最大长度。例如,假设您有一个字段来存储某人的名字,并且您将其设为NVARCHAR(50)
. 某人的名字超过 50 个字符总是有可能(尽管可能性很小)。
动态更改字段的最大长度是否可行?我的意思是,当您执行 . 时INSERT/UPDATE
,您会检查此人的姓名是否超过 50 个字符,ALTER
如果需要,请在执行INSERT/UPDATE
. ALTER
(或者,如果需要,捕获异常并执行)。
ALTER
如果表中有很多数据,操作会很慢吗?
假设您将列更改为NVARCHAR(100)
. 这张桌子上的 aSELECT
会比你NVARCHAR(100)
从一开始就做的慢吗?