プロが教える店舗&オフィスのセキュリティ対策術

翔泳社オラクルマスター教科書Silverを使ってシルバー取得の勉強をしています。
その中でわからない点があったので教えてください。

1.CONSTRAINT EMP_FK1 FOREIGN KEY(MGR) REFERENCES EMP(EMPNO)

2.CONSTRAINT EMP_FK2 REFERENCES DEPT(DEPTNO)

というふたつの制約文で、1.が正解で2が不正解となっているのですが、逆じゃないかな?と思うんです。

だって制約文の構文は
列名 データ型
,[CONSTRAINT 制約名] 制約
,[CONSTRAINT 制約名] 制約...

とあります。
1.は","で区切ってないから間違いだと思うんですがどうでしょうか?
どなたか解説していただけないでしょうか。
宜しくお願いいたします☆

A 回答 (3件)

こういうことですかね。



http://cgi.html.ne.jp/~nika/orcl_mst/schema-obje …

CREATE TABLE時に、列に対して制約をかけるときは2の構文、表に対して制約を書けるときは1の構文。

で、問題はどちらだったんでしょう?

#ちなみに、PRIMARY KEY制約、FOREIGN KEY制約は、実務で列に対してかけることはめったにないもんで(^^;;;;
ついでに、CREATE TABLE時につけることもあんまりないです。

参考URL:http://cgi.html.ne.jp/~nika/orcl_mst/schema-obje …
    • good
    • 0
この回答へのお礼

こんばんわ!

あー!!
ほんとだ制約って表構文と列構文があるんですね。
問題をよく見たら「表制約構文を選びなさい」って書いてありました!
問題文全然読んでませんでした(笑)

すみません、助かりました☆
ありがとうございました!

お礼日時:2003/09/01 22:55

2.のほうは、従業員コードに部門コードへのリレーションを張っているように思えます。

そこが間違いなのでは。

あてずっぽうですが。
    • good
    • 0
この回答へのお礼

こんばんわ☆

あっほんとですね~~
なんかリレーション貼ってる場所が違うような気もしますネ!
参考になります。ありがとうございました!

お礼日時:2003/09/01 22:56

では、2の制約の種類は何でしょう?



ちなみに1は、外部キー(FOREIGN KEY)制約です。

REFERENCESは制約の名前ではないですよ。
    • good
    • 0
この回答へのお礼

こんばんわ☆回答ありがとうございます!!

あれれ??
でも教科書にはFOREIGN KEY制約を定義する例文として

CONSTRAINT FK_部署NO REERENCES 部署(部署NO)

って書いてあるんです~!

だからREFERENCESはFOREIGN KEYを定義するために使うんだと思ってました。
うう~ん わからなくなってしまいました・・

お礼日時:2003/09/01 00:08

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!