日期:2014-05-17  浏览次数:20685 次

sql server 2005语句和手工都修改不了数据库字段长度!怎么回事啊!
原来的表里有数据,其他表我修改的字段也有数据,都可以修改 ,就有一个表怎么也修改不了,他们都是同一架构下的表,我是把字段扩大而不是缩小啊 原来字段长度为varchar50 我把他扩到varchar100怎么也扩不了,郁闷我扩的是生产环境上的数据库上的表,我本地测试环境的数据库上的这个表都能扩,怎么回事啊 ! 求解答!!
SQL?Server?2005

------解决方案--------------------
不知是不是没有打开允许表修改的

工具--选项--Designers--阻止保存要求重新创建表的更改(去掉勾)
------解决方案--------------------
或是你修改有什么提示没?
------解决方案--------------------
错误信息是什么? 

目标表是否有用于复制? 如有,应先删除复制,修改字段,重建复制..
------解决方案--------------------
报的什么错误?是不是正用于约束,索引等……
------解决方案--------------------
除了1楼说的那种情况,我还遇到一种情况,使用了用户自定义数据类型,然后该列引用了这个类型,导致无法修改,好像连删除都不行,后来取消了绑定类型,才可以操作。楼主你检查一下
------解决方案--------------------
--请楼主珍惜大家的时间。。。
--先把这个字段的类型,约束什么的说一下。
--再执行一下下面SQL,看报什么错?
ALTER TABLE YourTableName
ALTER COLUMN YourcolumnName VARCHAR(8000)
GO

------解决方案--------------------
应该是关联的数据正在被使用,所以不能修改。
------解决方案--------------------
引用:
提示保存过程中出错,一些数据对象未被保存,我看了下,我没有绑定什么自定义类型,数据类型就是varchar。
我的是sql server 2005 ,没有“工具--选项--Designers--阻止保存要求重新创建表的更改(去掉勾)”这个选项。

还有其他错误信息吗/