Oracle XEの表領域の削除

Pocket

凡例
・[]
 →任意
・{ a | b }
 →aかbどちらかを選択
・$XXX
 →任意設定項目

-- <表領域の削除:凡例>
DROP TABLESPACE $tablespace_name		-- 削除する表領域名の指定
	[ INCLUDE CONTENTS 					-- オブジェクトの削除指定
		[ { AND | KEEP } DATAFILES ] 	-- OSシステムファイルの削除指定
	]
	[ CASCADE CONSTRAINTS ]				-- 参照整合性制約の削除指定
;

<解説>
・INCLUDE CONTENTSを指定した場合は、表領域の中のすべてのデータベース・オブジェクトを削除できる。
 削除対象のtablespaceがオブジェクトがあり、
 INCLUDING CONTENTSを指定しない場合、エラーとなり、表領域は削除されない。

・AND DATAFILES
 関連するオペレーティング・システム・ファイルも削除する。

・KEEP DATAFILES
 関連するオペレーティング・システム・ファイル(Oracle Managed Filesも含む)を削除しない。

・CASCADE CONSTRAINTSを指定した場合は、tablespaceに含まれる表の主キーまたは一意キーを参照する、
 tablespaceの外の表からすべての参照整合性制約を削除できる。
 削除対象のtablespaceに参照整合性制約があり、
 CASCADE CONSTRAINTSを指定しない場合、エラーとなり、表領域は削除されない。

-- <表領域の削除:実行例①>
DROP TABLESPACE $tablespace_name		-- 削除する表領域名
	INCLUDE CONTENTS 					-- 表領域にオブジェクトが存在しても削除
		AND DATAFILES				 	-- OSシステムファイルも削除
	CASCADE CONSTRAINTS					-- 参照整合性制約が存在しても削除
;

参考
Oracle® Database SQL言語リファレンス 11gリリース2(11.2) DROP TABLESTAPPCE

タイトルとURLをコピーしました