色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

mysql建表的同時創(chuàng)建約束

謝彥文2年前9瀏覽0評論

MySQL是一種關(guān)系型數(shù)據(jù)庫管理系統(tǒng),通過建表并創(chuàng)建約束來保證數(shù)據(jù)在表中的完整性和一致性。本文將介紹如何在MySQL建表的同時創(chuàng)建約束。

CREATE TABLE persons (
id INT PRIMARY KEY NOT NULL,
name VARCHAR(50) NOT NULL,
age INT,
address VARCHAR(100)
);

以上代碼是一個簡單的建表語句,包含了4個字段:id、name、age和address。其中id是主鍵,不能為空;name也不能為空,其他字段可以為空。

CREATE TABLE departments (
id INT PRIMARY KEY NOT NULL,
name VARCHAR(50) NOT NULL,
manager_id INT,
FOREIGN KEY (manager_id) REFERENCES persons(id)
);

以上代碼是一個帶有外鍵約束的建表語句,用于創(chuàng)建departments表。其中manager_id是一個外鍵,引用了persons表中的id字段。這意味著在departments表中插入一條記錄時,manager_id的值必須在persons表中存在,并且必須是一個有效的id值。

CREATE TABLE orders (
id INT PRIMARY KEY NOT NULL,
customer_id INT NOT NULL,
order_date DATE NOT NULL,
total_price DECIMAL(10, 2) NOT NULL,
FOREIGN KEY (customer_id) REFERENCES customers(id)
ON DELETE CASCADE
);

以上代碼是一個帶有級聯(lián)刪除的外鍵約束的建表語句,用于創(chuàng)建orders表。其中customer_id也是一個外鍵,引用了customers表中的id字段。級聯(lián)刪除的意思是,在customers表中刪除一條記錄時,orders表中所有關(guān)聯(lián)該記錄的記錄也將被刪除。

除了以上介紹的約束,MySQL還支持唯一約束、默認(rèn)值約束、檢查約束等多種約束方式,可以根據(jù)實際需求進(jìn)行選擇和組合。