2017-06-22 14 views
0

を元に戻すことができない私は間違ってSQL Server:間違って[]で列の名前が変更されました。バック

exec sp_rename 'qt.Availability.[RateIndicator]','[AvailabilityIndicator]', 'COLUMN' 

このようsp_renameをを使用して、テーブルの列の名前を変更し、[AvailabilityIndi​​cator]だけではなく、AvailabilityIndi​​cator

の今、私はそれを戻すためにしようとしていますになってきて、私の列名になりました。私はエラーを取得する

exec sp_rename 'qt.Availability.[[AvailabilityIndicator]]' , 'AvailabilityIndicator1', 'COLUMN' 

次試してみました:構文エラーがSQL識別子 'qt.Availability [[AvailabilityIndi​​cator]]' を解析します。

はまた、私はエラーを取得する

exec sp_rename 'qt.Availability.[[]AvailabilityIndicator[]]' , 'AvailabilityIndicator1', 'COLUMN' 

を試してみました:構文エラーは、SQL識別子の構文解析 'qt.Availabilityを[[] AvailabilityIndi​​cator []]。'

お願いします。私は実際に引用された名前が開始された後

おかげ

+1

テーブルを右クリックし、[設計]に移動し、角括弧を削除して[保存]ボタンをクリックします。 –

答えて

1

[はそうエスケープする必要はありませんが、特殊文字ではないテーブルを削除して再作成する必要はありません。

]は特殊文字であり、リテラルの意味を維持するためにエスケープする必要があります。エスケープするには、それを2倍にします。

したがって、qt.Availability.[[AvailabilityIndicator]]]である必要があります。 SELECT QUOTENAME('[AvailabilityIndicator]')はあなたに[[AvailabilityIndicator]]]を与える:疑いで、QUOTENAME機能を使用

+0

これは非常に役に立ちました。ありがとう! –

関連する問題