2007年6月20日水曜日

Oracleで外部キー制約

スズキです。

すっかり忘れていたので、メモしておきます。

たとえば、会員テーブルとクレジットカードタイプテーブルがあって、
クレジットカードテーブルが、両テーブルの主キーを参照している場合です。

(テーブル): (主キー)
MEMBER: MEMBER_ID
CREDITCARD_TYPE: CREDITCARD_TYPE_ID

--------
CREATE TABLE CREDITCARD (
  CREDITCARD_ID NUMBER(10) PRIMARY KEY,
  MEMBER_ID NUMBER(10) NOT NULL,
  CREDITCARD_TYPE_ID NUMBER(1) NOT NULL,
  CREDITCARD_NO  VARCHAR2(40) NOT NULL,
  CONSTRAINT CREDITCARD_FK_1 FOREIGN KEY (MEMBER_ID)
    REFERENCES MEMBER(MEMBER_ID),
  CONSTRAINT CREDITCARD_FK_2 FOREIGN KEY (CREDITCARD_TYPE_ID)
    REFERENCES CREDITCARD_TYPE(CREDITCARD_TYPE_ID)
);
--------

あと、クレジットカード番号は暗号化して挿入しておきたいところですね。

--
blog: http://suz-lab.blogspot.com/

0 コメント: