2010-11-01 48 views
1

使用腳本來命名這已經引起了問題列...SQL腳本出錯需要幫助恢復「[」字符列名導致問題

sp_RENAME 'products.isvalid' , '[_is_valid_system]', 'COLUMN' 

現在我有一個列名用方括號中,並且我無法訪問該列來解決問題。

列名:

[_is_valid_system] 

試圖修復該問題,像這樣失敗,因爲該命令中的特殊字符:

sp_RENAME 'products.[_is_valid_system]' , '_is_valid_system', 'COLUMN' 

逃避這些字符的方法嗎?

即使我可以從列中選擇足夠好的列,但由於SQL Server中方括號的特殊含義,下列顯然不起作用。

select [is_valid_system] from products 

回答

3

嘗試

sp_RENAME 'products."[_is_valid_system]"' , '_is_valid_system', 'COLUMN'

+0

謝謝你,你的救星! – gb2d 2010-11-01 10:40:12

2

如果SET QUOTED_IDENTIFIER爲ON(應該是默認值),試試這個

EXEC sp_RENAME 'products."[_is_valid_system]"' , '_is_valid_system', 'COLUMN' 

僅供參考,您可以使用此也查詢

SELECT "[is_valid_system]" FROM products 
+0

謝謝,我會記住引號的東西! – gb2d 2010-11-01 10:40:38