1

SQL キーの制約は次のとおりであると理解しています。

UNIQUE - 列の各行には一意の値があります

NOT NULL と UNIQUE のPRIMARY KEYの組み合わせ

FOREIGN KEY - あるテーブルのデータが別のテーブルの値と一致することを保証します

KEY構文を単独で使用するだけで、どのようなキー制約が作成されますか? たとえば 、以下の例ではKEY user_id( user_id)です。

CREATE TABLE `orders` (
  `id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
  `user_id` INT UNSIGNED DEFAULT NULL,
  `transaction_id` VARCHAR(19) NOT NULL,
  `payment_status` VARCHAR(15) NOT NULL,
  `payment_amount` DECIMAL(6,2) UNSIGNED NOT NULL,
  `payment_date_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `user_id` (`user_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
4

1 に答える 1

2

ドキュメントから

通常、KEY は INDEX と同義です。キー属性 PRIMARY KEY は、列定義で指定されている場合、単に KEY として指定することもできます。これは、他のデータベース システムとの互換性のために実装されました。

于 2013-06-19T19:53:02.587 に答える