Sebelum memahami kunci utama, fahami dahulu apa itu kata kunci
Kata kunci: medan unik dalam jadual, seperti A person's Nombor ID dan nombor pelajar. Terdapat berbilang kata kunci dalam jadual.
Kunci primer ialah gabungan satu atau lebih kata kunci Maklumat tentang keseluruhan jadual boleh diperolehi melalui kunci primer, kadangkala juga dipanggil kunci utama. Mengambil jadual pesanan sebagai contoh, anda boleh mendapatkan nama penerima pesanan, maklumat produk, harga dan maklumat lain yang berkaitan melalui nombor pesanan.
Nota: Kata kunci tidak semestinya kunci utama, kunci utama mestilah kata kunci
Ciri-ciri: Kunci utama tidak boleh kosong, unik dan tidak boleh berulang. Jadual sama ada mempunyai hanya satu kunci utama atau tiada kunci utama, dan tidak boleh mempunyai berbilang kunci utama.
Kaedah 1: Tetapkan kunci utama semasa mencipta jadual
-- 建立User表 CREATE TABLE User( User_id int NOT NULL, User_name VARCHAR(20), User_pwd VARCHAR(18), -- 在这里设置id为主键 PRIMARY KEY(User_id) )
Dua kaedah di atas boleh mencipta kunci utama dan kesannya adalah sama.
Kaedah 2: Tiada kunci utama ditetapkan semasa membuat jadual, dan kemudian tetapkan kunci utama dalam jadual
Mula-mula buat jadual tanpa menetapkan kunci utama< . kaedah dalam kaedah 1 kepada kod semasa mencipta jadual Prinsip pertama adalah sama
CREATE TABLE Users( -- 也可以在字段中直接设置主键 User_id int NOT NULL PRIMARY KEY, User_name VARCHAR(20), User_pwd VARCHAR(18) )
CREATE TABLE User( User_id int NOT NULL, User_name VARCHAR(20), User_pwd VARCHAR(18) )
Sebagai contoh, jadual pesanan mengandungi dua kunci asing: ID produk dan ID pengguna. ID produk ialah kunci utama jadual maklumat produk dan ID pengguna ialah kunci utama jadual pengguna.
ALTER TABLE user ADD PRIMARY KEY(User_id)
ALTER TABLE users MODIFY User_id INT PRIMARY KEY;
CREATE TABLE dingdan( DDid INT PRIMARY KEY NOT NULL, User_id INT NOT null, DDname VARCHAR(20) NOT NULL, -- 设置约束关系,dingdan表中的User_id 与 user表中的User_id表示的是同一个数据 constraint fk FOREIGN KEY(User_id) REFERENCES user(User_id) )
alter table student add constraint stfk foreign key(stid) references teacher(tid)
CREATE TABLE User( User_id int NOT NULL, User_name VARCHAR(20), User_pwd VARCHAR(18), User_Email VARCHAR(40) UNIQUE )
CREATE TABLE User( User_id int NOT NULL, User_name VARCHAR(20), User_pwd VARCHAR(18), User_Email VARCHAR(40) UNIQUE not null )
Atas ialah kandungan terperinci Bagaimana untuk menetapkan kekangan pada jadual dalam pangkalan data MySQL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!