2009-07-22 26 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) 
相關問題