Rumah > pangkalan data > SQL > Fahami secara ringkas kekangan kunci utama SQL Server (KUNCI UTAMA)

Fahami secara ringkas kekangan kunci utama SQL Server (KUNCI UTAMA)

WBOY
Lepaskan: 2022-09-06 17:30:57
ke hadapan
3122 orang telah melayarinya

Artikel ini membawa anda pengetahuan yang berkaitan tentang pelayan SQL, yang terutamanya memperkenalkan kekangan kunci utama SQL Server (KUNCI UTAMA Kekunci utama ialah lajur atau kumpulan yang mengenal pasti secara unik setiap baris dalam jadual). Lajur, artikel itu mengembangkan topik secara terperinci Mari kita lihat bersama-sama. Saya harap ia akan membantu semua orang.

Fahami secara ringkas kekangan kunci utama SQL Server (KUNCI UTAMA)

Kajian yang disyorkan: "Tutorial SQL"

Pengenalan kepada SQL Server PRIMARY KEY (primary key) kekangan

Kunci utama Merupakan lajur atau set lajur yang mengenal pasti secara unik setiap baris dalam jadual. Anda boleh menggunakan kekangan kunci utama untuk membuat kunci utama untuk jadual.
Jika kunci utama hanya mengandungi satu lajur, anda boleh menggunakan kekangan PRIMARY KEY sebagai kekangan lajur:

CREATE TABLE table_name (
    pk_column data_type PRIMARY KEY,
    ...
);
Salin selepas log masuk

Jika kunci utama mempunyai dua atau lebih lajur, anda mesti menggunakan kekangan kunci utama sebagai kekangan jadual :

CREATE TABLE table_name (
    pk_column_1 data_type,
    pk_column_2 data type,
    ...
    PRIMARY KEY (pk_column_1, pk_column_2)
);
Salin selepas log masuk

Setiap jadual hanya boleh mengandungi satu kunci utama dan satu kunci utama boleh mengandungi berbilang lajur, iaitu gabungan berbilang lajur tidak boleh diulang . Semua lajur yang mengambil bahagian dalam kunci utama mesti ditakrifkan sebagai NOT NULL. Jika kekangan NOT NULL tidak ditentukan untuk semua lajur kunci utama, SQL Server secara automatik menetapkan kekangan bukan nol untuk lajur ini.

Contoh kekangan KUNCI UTAMA Pelayan SQL

Contoh berikut mencipta jadual dengan kunci utama yang terdiri daripada satu lajur:

CREATE TABLE dbo.activities (
    activity_id INT PRIMARY KEY IDENTITY,--主键
    activity_name VARCHAR (255) NOT NULL,
    activity_date DATE NOT NULL
);
Salin selepas log masuk

Dalam jadual Dalam dbo.activities, lajur activity_id ialah lajur kunci utama, yang bermaksud bahawa nilai lajur ini tidak boleh diulang Atribut

IDENTITY digunakan untuk menjana nilai integer unik secara automatik. lajur activity_id.

Yang berikut mencipta jadual baharu dengan dua lajur yang membentuk kunci asing:

CREATE TABLE dbo.participants(
    activity_id int,
    customer_id int,
    PRIMARY KEY(activity_id, customer_id)
);
Salin selepas log masuk

Dalam kes ini, nilai dalam activity_id atau customer_id lajur Boleh diulang, tetapi setiap gabungan nilai dalam dua lajur mestilah unik.

Biasanya, kunci utama sentiasa ditakrifkan apabila jadual dibuat. Walau bagaimanapun, kadangkala, jadual sedia ada mungkin tidak mempunyai kunci utama yang ditentukan. Dalam kes ini, anda boleh menggunakan pernyataan ALTER TABLE untuk menambah kunci utama pada jadual. Contohnya:

Mula-mula buat jadual tanpa lajur kunci utama:

CREATE TABLE dbo.events(
    event_id INT NOT NULL,
    event_name VARCHAR(255),
    start_date DATE NOT NULL,
    duration DEC(5,2)
);
Salin selepas log masuk

dan kemudian jadikan lajur event_id sebagai kunci utama:

ALTER TABLE sales.events 
ADD PRIMARY KEY(event_id);
Salin selepas log masuk

Perhatikan bahawa jika jadual sales.events sudah mempunyai data, sebelum mempromosikan lajur event_id kepada kunci utama, anda mesti memastikan bahawa nilai dalam event_id tidak diulang.

Kajian yang disyorkan: "Tutorial SQL"

Atas ialah kandungan terperinci Fahami secara ringkas kekangan kunci utama SQL Server (KUNCI UTAMA). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sql
sumber:jb51.net
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan