部門表 (DEPARTMENT)

部門表には、社内の各部門が記述され、部門管理者および直属の上位部門が指定されます。

部門表は、以下の CREATE TABLE ステートメントおよび ALTER TABLE ステートメントを使用して作成します。

CREATE TABLE DEPARTMENT
      (DEPTNO    CHAR(3)           NOT NULL,
       DEPTNAME  VARCHAR(36)       NOT NULL,
       MGRNO     CHAR(6)                   ,
       ADMRDEPT  CHAR(3)           NOT NULL, 
       LOCATION  CHAR(16),
       PRIMARY KEY (DEPTNO))

ALTER TABLE DEPARTMENT
      ADD FOREIGN KEY ROD (ADMRDEPT)
          REFERENCES DEPARTMENT
          ON DELETE CASCADE

以下の外部キーが、後で追加されます。

ALTER TABLE DEPARTMENT
      ADD FOREIGN KEY RDE (MGRNO)
          REFERENCES EMPLOYEE
          ON DELETE SET NULL

以下の索引が作成されます。

CREATE UNIQUE INDEX XDEPT1
       ON DEPARTMENT (DEPTNO)

CREATE INDEX XDEPT2
       ON DEPARTMENT (MGRNO)

CREATE INDEX XDEPT3
       ON DEPARTMENT (ADMRDEPT)

以下の別名が、表用に作成されます。

CREATE ALIAS DEPT FOR DEPARTMENT

次の表は列の内容を示しています。

表 1. 部門表の列
列名 説明
DEPTNO 部門番号または ID。
DEPTNAME 部門の全体的作業を表した名前。
MGRNO 部門管理者の社員番号 (EMPNO)。
ADMRDEPT この部門の直属の上位管理部門 (DEPTNO)。最上位レベルの部門の上位管理部門はそれ自身です。
LOCATION 部門の場所。