0

列のあるテーブルがあります

  1. cid(顧客ID)
  2. cemail(顧客の電子メール)
  3. cfax(顧客の電子メール)
  4. cname(顧客名)

今、私はcid、cemail、cfaxに重複がないようにしたいのですが、これらをすべて主キーとして作成しますが、データベースがデータを受け入れる値が1つだけ異なる場合は、すべての値をチェックする必要があります。

4

2 に答える 2

1

これらのフィールド全体で一意のインデックスを作成する必要があります。

簡単な例として(テストされていません):

CREATE UNIQUE INDEX my_index ON my_table(cemail, cfax, cname);
于 2009-12-14T14:52:59.353 に答える
0
CREATE TABLE `customers` (
  `cid` int NOT NULL auto_increment,
  `cemail` varchar(123) NOT NULL,
  `cfax` varchar(123) NOT NULL,
  `cname` varchar(123) NOT NULL,
  PRIMARY KEY  (`cid`),
  UNIQUE KEY `cemail` (`cemail`,`cfax`,`cname`)
);
于 2009-12-14T14:57:34.477 に答える