[Seasar-user:7409] Re: [DbLauncher]外部キーの設定

Tetsutaroh Satoh [E-MAIL ADDRESS DELETED]
2007年 4月 23日 (月) 20:16:28 JST


佐藤徹太郎です。
太一さん、お返事ありがとうございました。
あのように確認するのですね。大変勉強になりました。
未熟者なので迷惑な質問をして、すみませんでした。
以後、気をつけます。
ありがとうございました。

-----Original Message-----
From: [E-MAIL ADDRESS DELETED]
[mailto:[E-MAIL ADDRESS DELETED]] On Behalf Of taichi sato
Sent: Monday, April 23, 2007 5:30 PM
To: [E-MAIL ADDRESS DELETED]
Subject: [Seasar-user:7399] Re:[DbLauncher]外部キーの設定

太一です。

DbLauncher自体の質問ではないので、
何が適切な動作なのかは、分りませんが、以下の様なクエリで実験してみました。

DROP TABLE IF EXISTS BOOKSPEC;
CREATE TABLE BOOKSPEC(
  ID VARCHAR(20) PRIMARY KEY
);

DROP TABLE IF EXISTS RENTINFODETAIL;
CREATE TABLE RENTINFODETAIL(
  BOOKID VARCHAR(20) PRIMARY KEY
);

DROP TABLE IF EXISTS BOOK;

CREATE TABLE BOOK(
  ID VARCHAR(20) PRIMARY KEY,
  BOOKSPECID VARCHAR(20),
  STATUS VARCHAR(20),
  CONSTRAINT BOOK_BOOKSPEC FOREIGN KEY(BOOKSPECID) REFERENCES BOOKSPEC(ID),
  CONSTRAINT BOOK_RENTINFODETAIL FOREIGN KEY(ID) REFERENCES
RENTINFODETAIL(BOOKID)
);

INSERT INTO BOOKSPEC VALUES(20);
INSERT INTO RENTINFODETAIL VALUES(10);

INSERT INTO BOOK (ID, BOOKSPECID ,STATUS)values(10,20,'aaa');
INSERT INTO BOOK (ID, BOOKSPECID ,STATUS)values(11,20,'aaa');
INSERT INTO BOOK (ID, BOOKSPECID ,STATUS)values(10,21,'aaa');

最後のINSERT文2つはエラーになるので、
外部キーを複数定義すれば、それぞれが、制約として動作する様です。
結果としては、H2に同梱されているコンソールアプリケーションに問題が少なからず
あるようです。

尚、H2自体の動作については、なるべくH2のMLでご質問なさって下さい。
http://groups.google.com/group/h2-database

よろしくお願いします。

07/04/23 に Tetsutaroh Satoh<[E-MAIL ADDRESS DELETED]> さんは書きました:
>
>
>
>
> 佐藤徹太郎です。
>
> お世話になっております。
>
> DbLauncher0.0.3を使用しております。
>
> H2コンソールでCREATE TABLE文の中で
>
> 外部キーを2つ定義したはずなのに、
>
> H2コンソールには、1つしか表示されません。
>
> SQLは次のように書きました。
>
>
>
> CREATE TABLE BOOK
>
>  (ID VARCHAR(20) PRIMARY KEY,
>
>   BOOKSPECID VARCHAR(20),
>
>   STATUS VARCHAR(20),
>
>   CONSTRAINT BOOK_BOOKSPEC FOREIGN KEY(BOOKSPECID) REFERENCES
BOOKSPEC(ID),
>
>   CONSTRAINT BOOK_RENTINFODETAIL FOREIGN KEY(ID) REFERENCES
> RENTINFODETAIL(BOOKID));
>
>
>
> どこか、書き方が間違っていますでしょうか? これでは、外部キーは1つしか定
義されないのでしょうか?
>
> ご教授よろしく御願い致します。
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
>
>
_______________________________________________
Seasar-user mailing list
[E-MAIL ADDRESS DELETED]
https://ml.seasar.org/mailman/listinfo/seasar-user





Seasar-user メーリングリストの案内