- ベストアンサー
プライマリーキーについて
いつも参考にさせて頂いています。 初歩的な質問ですが宜しくお願いします。 現在mysql4.0.20を使用しています。 プライマリーキーを2つ設定したいのですが、mysqlでは無理なのでしょうか?Oracleでは設定できたのですがうまくいきません。 どうかご教授宜しくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
>プライマリーキーを2つ設定したい プライマリキーを、別々に二つ持つという意味ではないですよね? プライマリキーを、2個の列で構成したいという意味ですか? >Oracleでは設定できたのですが Oracleでもプライマリキーは、1表で1個になっていますね。 以下のような記述になります。 create table t1 (c1 int, c2 int, c3 int, primary key(c1,c2)) こういった質問をする場合は、具体的なSQL例を示してください。
その他の回答 (2)
- chukenkenkou
- ベストアンサー率43% (833/1926)
回答No.3
#1回答者です。 >上記2つのSQLを実行した場合、エラーにはならないという認識ですがあっていますでしょうか? はい、その通りです。
質問者
お礼
ありがとうございました。 また何かありましたら宜しくお願いします。
- yambejp
- ベストアンサー率51% (3827/7415)
回答No.2
とりあえず、indexとuniqueをつければ、プライマリキーらしい 設定にはなりますけどね・・・
お礼
早速の回答ありがとうございます。 説明不足で申し訳ありません。 >プライマリキーを、2個の列で構成したいという意味ですか? まさにそのとおりで、2つのカラムでプライマリーキーを設定したいという意味です。 create table t1 (c1 int, c2 int, c3 int, primary key(c1,c2)) という例を示して頂きましたが、 このテーブルに insert into t1 values ( 1,2,3) insert into t1 values ( 1,3,3) 上記2つのSQLを実行した場合、エラーにはならないという認識ですがあっていますでしょうか? insert into t1 values ( 1,2,3) insert into t1 values ( 1,2,4) だとエラーになるという認識です。