MySQL是一種關(guān)系型數(shù)據(jù)庫,它支持使用主鍵和外鍵進行數(shù)據(jù)表之間的關(guān)聯(lián)。下面我們來看一下主鍵和外鍵的用法。
主鍵:
<pre>CREATE TABLE student (
id INT NOT NULL PRIMARY KEY,
name VARCHAR(50),
age INT
);
在上面的例子中,我們定義了一個學(xué)生表student,其中id為主鍵。主鍵的作用是保證每條記錄的唯一性。不允許有兩條記錄的id值相同。
外鍵:
<pre>CREATE TABLE course (
id INT NOT NULL PRIMARY KEY,
name VARCHAR(50)
);
CREATE TABLE score (
id INT NOT NULL PRIMARY KEY,
student_id INT,
course_id INT,
score INT,
FOREIGN KEY (student_id) REFERENCES student(id),
FOREIGN KEY (course_id) REFERENCES course(id)
);
在上面的例子中,我們定義了一個課程表course和一個成績表score。成績表中的student_id和course_id都是外鍵,它們分別參考了學(xué)生表student和課程表course的主鍵id。外鍵的作用是保證數(shù)據(jù)表之間的一致性。在成績表中,如果某個學(xué)生或者某門課程不存在,就無法插入成績記錄。
通過使用主鍵和外鍵,我們可以構(gòu)建出一個強約束的數(shù)據(jù)庫結(jié)構(gòu),保證數(shù)據(jù)的一致性和完整性。