【发布时间】:2016-05-15 20:11:29
【问题描述】:
我运行以下脚本将“Verdata”表中的“Asdes”字段从 nvarchar(255) 更改为 varchar(150)。
Alter table Verdata
Alter column asdes varchar(150)
脚本运行没有错误,但当我进入表格设计模式时该字段保持未修改。
【问题讨论】:
-
关闭设计视图,然后重新打开它,或者最好重新连接到服务器并查看。
-
只是好奇...为什么需要减小可变字符列的大小?
-
sp_help 显示的大小是否正确?
-
我希望字段“asdes”是一个外键,这个表是从 MS 访问导入的,并且大小(我相信你知道)默认导入到字符串字段类型 nvarchar(255 )。 SQL Server 不想创建外键,除非它与源字段的大小相同。我最终使用设计视图更改了表,我只是好奇为什么上面的查询没有效果。
-
@kritner 效率,nvrachar 占用两倍的空间,经验法则是使用节省磁盘空间所需的最小字段大小,我相信这也可以转化为查询性能提升。
标签: sql-server database alter-table