Переименование столбца: неправильный синтаксис рядом с 'SP_RENAME'.?

ALTER TABLE [TEMP]
SP_RENAME '[TEMP].[Day]', 'GT', 'COLUMN'

Я пытаюсь переименовать Day в GT и получаю ошибку

Неверный синтаксис рядом с 'SP_RENAME'

SQL Server Management Studio сообщает, что ошибка включена SP_RENAME

ПРИМЕЧАНИЕ: я открыт для других опций, кроме sp_rename

3 ответа

Решение

SP_RENAME не является частью ALTER TABLE заявление. Это системная хранимая процедура, и поэтому она должна вызываться с помощью EXEC/EXECUTE утверждение, как это:

exec SP_RENAME '[TEMP].[Day]', 'GT', 'COLUMN'

(без alter table temp немного)

Вам нужно начать каждое SP_RENAME с EXEC

Работал над ответом, который цитировал @juergen d.

PRINT N'Modifying Schema for SAMPLE_TABLE started'
DECLARE @COLNAME_DEAL_TERM VARCHAR(200) ;
SET @COLNAME_DEAL_TERM = 'SAMPLE_COL_NAME';

IF COL_LENGTH('SAMPLE', @COLNAME_DEAL_TERM ) IS NULL
BEGIN
    exec SP_RENAME 'SAMPLE.portfolio',@COLNAME_DEAL_TERM , 'COLUMN';
END;
GO
Другие вопросы по тегам