CREATE TABLE department( deptno NUMBER(2) CONSTRAINT pk_department PRIMARY KEY, dname VARCHAR2(14) );
1行目:department表の作成
2行目:NUMBER型最大精度2桁のdeptnp列定義、主キー制約定義
3行目:VARCHAR2型最大14桁のdname列定義
CREATE TABLE employee( empno NUMBER(4) CONSTRAINT pk_employee PRIMARY KEY, ename VARCHAR2(10) CONSTRAINT notnull_ename NOT NULL, job VARCHAR2(9), mgr NUMBER(4) CONSTRAINT fk_mgr REFERENCES employee(empno), hiredate DATE DEFAULT SYSDATE, sal NUMBER(7,2) CONSTRAINT check_sal CHECK (sal>0), comm NUMBER(7,2), deptno NUMBER(2) REFERENCES department(deptno), CONSTRAINT check_empno CHECK (empno>0) );
3行目:varchar2型ename列にnotnull_enameという名称でNOT NULL制約を設定
5行目:number型mgr列にfk_mgrという名称で、employee表のempno列を親キーとする参照整合性制約を設定
6行目:date型hiredate列にデフォルトとしてsysdateを設定
7行目:numbdr型sal列にcheck_salという名称で、0より大きい値のみを入力させるチェック制約を設定
9行目:number型deptno列に名称を指定せずに、department表のdeptno列を親キーとする参照整合性制約を設定
10行目:empno列にcheck_empnoという名称で、0より大きい値のみを入力させるチェック制約を設定
department表とdepartment表を参照している制約を削除
employee表を削除
employee表のsample列のサイズを20バイトに変更
employee表のsample列にuni_sample という名称でUNIQUE制約を追加
employee表の制約uni_sampleを削除
employee表のcheck_sal制約を無効化
employee表のcheck_sal制約を有効化
データディクショナリーuser_tablesからtable_name列(表名称)を検索
データディクショナリーuser_constraintsから
table_nameがDEPARTMENTかEMPLOYEEであるデータの
constraint_name(制約名), constraint_type(制約のタイプ),table_name(表名称),
status(制約の状態)を検索