1. ホーム
  2. sql

[解決済み】SQLでテーブルのスキーマ名を変更する。

2022-04-10 11:41:11

質問

テーブルのスキーマ名を変更したい Employees のデータベースで 現在のテーブル Employees データベーススキーマ名は dbo に変更したい。 exe . どうすればいいのでしょうか?

フロム

dbo.Employees

TO

exe.Employees

このクエリで試してみました。

ALTER SCHEMA exe TRANSFER dbo.Employees

しかし、これではエラーになる。

スキーマ 'exe' が存在しないか、または使用されていないため、スキーマ 'exe' を変更できません。 権限があります。

何を間違えたのでしょうか?

解決方法は?

スキーマの作成 :

IF (NOT EXISTS (SELECT * FROM sys.schemas WHERE name = 'exe')) 
BEGIN
    EXEC ('CREATE SCHEMA [exe] AUTHORIZATION [dbo]')
END

ALTER スキーマ :

ALTER SCHEMA exe 
    TRANSFER dbo.Employees