Переименование объекта не поддерживается в хранилище данных SQL Azure?

[Публикация вопроса от клиента во внутренней ветке]

Я попытался запустить следующие команды в SQL DW:

RENAME OBJECT dbo.test TO test2
RENAME OBJECT test TO test2

Оба отказали со следующей ошибкой:

No item by the name of '[DemoDB].[dbo].[test]' could be found in the current database 'DemoDB', given that @itemtype was input as '(null)'.

Это дефект или есть обходной путь, который я могу использовать?


person Nicolle Anger - MSFT    schedule 26.08.2015    source источник


Ответы (3)


RENAME теперь поддерживается. Чтобы использовать объект переименования, вы должны префикс таблицы, которую вы хотите изменить, с именем схемы следующим образом:

ПЕРЕИМЕНОВАТЬ ОБЪЕКТ x.T_New В T;

Обратите внимание, что для цели нет уточнения схемы. Это связано с тем, что переименованный объект должен оставаться в той же схеме. Для переноса таблицы из одной схемы в другую необходимо использовать следующую команду:

ИЗМЕНИТЬ СХЕМУ dbo TRANSFER OBJECT::x.T_NEW;

person Nicolle Anger - MSFT    schedule 26.08.2015
comment
Быстрое обновление — исправление появится в течение следующих 2 недель! - person Nicolle Anger - MSFT; 06.10.2015
comment
К сведению: это исправление поддерживает только переименование таблицы в той же схеме. - person Nicolle Anger - MSFT; 08.02.2016

RENAME теперь поддерживается. Чтобы использовать объект переименования, вы должны префикс таблицы, которую вы хотите изменить, с именем схемы следующим образом:

ПЕРЕИМЕНОВАТЬ ОБЪЕКТ x.T_New В T;

Обратите внимание, что для цели нет уточнения схемы. Это связано с тем, что переименованный объект должен оставаться в той же схеме. Для переноса таблицы из одной схемы в другую необходимо использовать следующую команду:

ИЗМЕНИТЬ СХЕМУ dbo TRANSFER OBJECT::x.T_NEW;

person Matt Usher    schedule 31.01.2017

В случае, если кто-то еще смотрит на время. Теперь это возможно в Azure Synapse Analytics, ранее известном как Azure SQL Datawarehouse; вы можете пойти с:

ALTER DATABASE AdventureWorks2012
MODIFY NAME = Northwind;
person Gian Carlos Liriano Adames    schedule 20.07.2021