(1)テーブル作成権限を追加する
ユーザにテーブルを作成するための権限“CREATE TABLE”を追加します。
CMD> sqlplus system/パスワード@接続先 SQL> conn /as sysdba
GRANT CREATE TABLE TO IKUYANI /
(2)テーブルを作成する
CMD> sqlplus IKUYANI/IKUYANI0
CREATE TABLE IKUYANI.SHAIN_M ( -- テーブル名:SHAIN_M SHAIN_CD NVARCHAR2(10) NOT NULL -- カラム:SHAIN_CD ,FIRST_NAME NVARCHAR2(10) NOT NULL -- カラム:FIRST_NAME ,LAST_NAME NVARCHAR2(10) NOT NULL -- カラム:LAST_NAME ,AGE NUMBER(3) NOT NULL -- カラム:AGE ,CONSTRAINT PK_SHAIN_M PRIMARY KEY ( SHAIN_CD ) -- 主キー:SHAIN_CD ) TABLESPACE IKUYANITS -- 表領域:IKUYANITS LOGGING -- ログ設定(ダイレクトパスインサートでINSERTを高速化する場合は“NOLOGGING”を指定) /
この例では、テーブル名の前にスキーマ名も指定しています。SQLファイルを作成する上で、Oracleインスタンスが1つしか作成できず、テスト環境を別スキーマに作成しなければならないなどの制約がある場合はスキーマ名を未指定にすることも考えられますが、個人的には未指定は事故の元なので嫌いです。
■CREATE TABLE公式ドキュメント
https://docs.oracle.com/cd/E16338_01/server.112/b56299/statements_7002.htm
(3)作成したテーブルを確認する
SELECT OBJECT_TYPE, OBJECT_NAME, CREATED FROM ALL_OBJECTS WHERE OWNER = 'IKUYANI' AND OBJECT_TYPE IN ('TABLE', 'INDEX') ORDER BY OBJECT_TYPE, OBJECT_NAME /
結果
OBJECT_TYPE OBJECT_NAME CREATED ------------- ------------- -------- INDEX PK_SHAIN_M 16-05-30 TABLE SHAIN_M 16-05-30