2009-07-22 23 views
2

我在我刚接手数据库的邮政编码场。以前,它被设置为18精度的数字字段,但我试图将其转换为varchar(10)。我怎么能在我的SQL数据库更改字段从数字(18)为varchar(10)

我需要作出这种改变,因为LINQ字段来作为小数和正在造成的问题,我想改变LINQ领域仅仅是字符串。

我想这在SQL Server企业管理器,但我得到这个错误,他说:

,该表将不得不被删除并重新创建。你要么做,不能重新创建或启用该选项,以防止那些需要表休闲

任何建议节约的变化而变化的桌子吗?

回答

1

您是否正在使用MS-SQL 2008?需要重建表的更改默认被阻止。

点击工具 - >选项,然后设计师。取消选中“阻止保存需要重新创建表的更改”。

然后你可以使用设计更改列。

http://pragmaticworks.com/community/blogs/brianknight/archive/2008/06/04/sql-server-2008-designer-behavior-change-saving-changes-not-permitted.aspx

+0

是的,我是在2008年:

截图上如何做到这一点。 。我会放弃 – leora 2009-07-22 15:42:38

2

启用SQL Management Studio中取消选中下面的选项,选项...

需要表重新创建

你也可以

工具/选项/设计师/表和数据库设计人员/防护保存更改运行alter语句来更改数据类型(只要所有数据都适合varchar(10)列)。

ALTER TABLE MyTable 
    ALTER COLUMN MyZipCodeColumn VARCHAR(10) 
相关问题