2012-02-02 30 views
0

我有我的數據類型地理數據庫中的列,我想轉換爲varchar。轉換地理數據類型列到NVARCHAR

我使用下面的查詢,以做到這一點...

- 1:問題與Microsoft.SqlServer.Types.dll。

ALTER TABLE RetailerStore ALTER COLUMN Location VARCHAR(50) 

但是,我得到錯誤信息

消息257,級別16,狀態3,行1
隱式轉換,從數據類型地理爲varchar是不允許的。使用CONVERT函數來運行此查詢。

有沒有人遇到過這個問題,如果是的話,他們是否知道解決問題的方法?

回答

0

沒有隱式轉換。列中是否有數據?如果是這樣,請在嘗試更改列類型之前將它全部設置爲NULL。或者,您可以刪除並重新創建該列。

注意,有一個從地理到一個文本形式明確的轉換 - 您可以使用STAsText的空間類型轉換爲文本表示。

使用ALTER TABLE向下降及補充:

ALTER TABLE RetailerStore DROP COLUMN Location; 
ALTER TABLE RetailerStore ADD Location VARCHAR(50) NULL; 
+0

嗨凱德,整列設置爲null。 你能幫我詳細介紹一下tsql語句來刪除列,然後重新創建它。 感謝 – swade1987 2012-02-02 16:22:41

+0

@ swade1987也許所有的NULL不起作用,因爲地理位置是一個CLR類型。我在回答中添加了DROP和ADD示例。 – 2012-02-02 16:29:26

+0

ADD並不需要COLUMN這個詞,但其他一切都很好,歡呼的夥計。 – swade1987 2012-02-02 16:30:33

相關問題