0

私は数週間前にこの質問をしました。その間、私はMySQLに移行しましたが、残念ながらソリューションは移行していません。

ペアを一意にする代わりにcomp_owner_id, comp_name、これらの列は両方とも一意である必要があるとマークされています。これについての正しい方法は何ですか?

InnoDBテーブルでMySQL5.1を使用しています。

4

2 に答える 2

1

これらの列に一意のインデックスを作成すると、列の組み合わせが一意であるという制約が作成されます。http://dev.mysql.com/doc/refman/5.1/en/create-index.htmlを参照してください

何かのようなもの

CREATE UNIQUE INDEX <index_name> ON <table_name> (COMP_OWNER_ID, COMP_NAME);

ここで、index_nameとtable_nameを指定します。

于 2012-09-28T05:49:17.037 に答える
0

ここにテーブル定義を貼り付けていただけますか?PRIMARYKEY(col1、col2)のように2つの列で主キーを定義する必要があると思いますか?

これはMySQLドキュメントからのものです:

PRIMARY KEYは、複数列の索引にすることができます。ただし、列指定でPRIMARYKEYキー属性を使用して複数列の索引を作成することはできません。これを行うと、その単一の列のみがプライマリとしてマークされます。別のPRIMARYKEY(index_col_name、...)句を使用する必要があります。

于 2012-09-28T05:50:56.850 に答える