Запрос SQL Server 2005 не выполняется - PullRequest
0 голосов
/ 07 января 2011

До публикации этого вопроса я пробовал так много вещей, но это не помогло мне. Я хочу переименовать столбец таблицы на SQL Server 2005, следующий запрос, который я запустил на SQL Server 2005:

1) ALTER TABLE Подробности ПЕРЕИМЕНОВАТЬ КОЛОННУ AccountID TO UID; но это дает мне ошибка: неверный синтаксис рядом с Ключевое слово "COLUMN".

2) Я добавил один новый столбец в таблица по запросу: ALTER TABLE Подробнее ADD BID уникальный идентификатор; и затем я хотите установить свойство coulmn, чтобы не ноль.

Как я могу это сделать?

Заранее спасибо AS

Ответы [ 2 ]

4 голосов
/ 07 января 2011

Использование sp_Rename 'TableName.Column', 'NewColumnName', 'COLUMN'.

Чтобы выполнить вторую часть вопроса, вам необходимо:

ALTER TABLE myTable 
        ADD myColumn UNIQUEIDENTIFIER NOT NULL DEFAULT 'some default value'  

Если вы не хотите указывать значение по умолчанию, вам сначала нужно создать столбец с NULL. После создания столбца вы можете заполнить его нужными значениями и затем изменить столбец на NOT NULL.

2 голосов
/ 07 января 2011

1) Вместо использования ALTER TABLE, почему бы не использовать sp_rename? Например:

EXEC sp_rename 'Details.[AccountID]', 'title', 'UID'

2) Вы можете использовать ALTER TABLE Details ALTER COLUMN BID NOT NULL, но вы, вероятно, захотите указать для него также значение по умолчанию, если в таблице уже есть данные.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...