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;