Переименовать столбец в хранилище данных Azure
Я знаю, что могу достичь своей цели с помощью этого процесса:
- Создать новый столбец
- Обновление нового от старого
- Брось старый
Я ищу способ сделать это с помощью одной команды. я знаю это remane object
работает на уровне таблицы. Например, я могу сделать это:
rename object Test.danPatient to dimPatient
Но все они терпят неудачу с различными сообщениями об ошибках:
rename object Test.dimPatient.City to Test.dimPatient.Town
rename object Test.dimPatient.City to Town
rename object DatabaseName.Test.dimPatient.City to Town
rename object DatabaseName.Test.dimPatient.City to DatabaseName.Test.dimPatient.Town
Плюс, согласно этому, sp_rename
не поддерживается хранилищем данных Azure. Мои неудачные попытки использовать его предполагают, что веб-страница является точной.
Я пытаюсь сделать невозможное?
2 ответа
Вы правы, что прямо сейчас вы не можете переименовать колонку таким способом. Самый быстрый способ сделать это сегодня - запустить операцию CREATE TABLE AS SELECT (CTAS). Ваше заявление будет выглядеть примерно так:
CREATE TABLE Test.DimPatientNew AS
SELECT
City [town],
<all other columns>
FROM
Test.DimPatient;
Вы можете добавить свой отзыв на наш общедоступный форум отзывов здесь: https://feedback.azure.com/forums/307516-sql-data-warehouse
Переименуйте запрос столбца: https://feedback.azure.com/forums/307516/suggestions/18434083
sp_rename
и столбец теперь поддерживаются в Azure Synapse Analytics. Итак, вы можете использовать:
sp_rename '[schema].[table].[old_column]', '[new_column]' , 'COLUMN';
Ссылка: ссылка