2
我有一個SQL Server 2008表,其中包含當前存儲爲bigint的外部用戶引用 - 外部表中的用戶標識。我想擴展它以允許使用電子郵件地址,打開ID等作爲外部標識符。是否可以將bigint中的列數據類型更改爲varchar而不影響任何現有數據?是否可以在填充後將bigserver中的SQL Server表列數據類型更改爲varchar?
我有一個SQL Server 2008表,其中包含當前存儲爲bigint的外部用戶引用 - 外部表中的用戶標識。我想擴展它以允許使用電子郵件地址,打開ID等作爲外部標識符。是否可以將bigint中的列數據類型更改爲varchar而不影響任何現有數據?是否可以在填充後將bigserver中的SQL Server表列數據類型更改爲varchar?
是的,這應該是可能的,沒問題 - 只要你讓你VARCHAR
場大到足以容納你:-)
BIGINT值你不得不使用這樣的T-SQL:
ALTER TABLE dbo.YourTable
ALTER COLUMN YourColumnName VARCHAR(50) -- or whatever you want
而且應該是它!由於所有BIGINT
值都可以轉換爲字符串,因此該命令應該可以正常工作,並且不會有丟失數據的危險。
是的,你可以 - 提供你定義`varchar`大小足夠大。如果它不夠大,SQL Server會拋出一個錯誤 – codingbadger 2011-02-10 11:11:24
應該很容易測試。 – 2011-02-10 12:42:11