MySQL中的兩個重要的概念:主鍵和外鍵。兩者相互關聯,可以極大地優化數據庫的性能。主鍵是表格中的一個列組合,能唯一確定每一行記錄。而外鍵是關系數據庫中一個重要的約束條件,它可以幫助維護表格間的一致性和完整性。
CREATE TABLE `students` ( `id` INT PRIMARY KEY AUTO_INCREMENT, `name` VARCHAR(255), `age` INT ); CREATE TABLE `course` ( `id` INT PRIMARY KEY AUTO_INCREMENT, `name` VARCHAR(255), `student_id` INT, FOREIGN KEY (`student_id`) REFERENCES `students` (`id`) );
上面的代碼創建了兩張表:學生表(students)和課程表(course)。在學生表中,`id`是主鍵;在課程表中,`id`也是主鍵,而`student_id`是指向學生表的外鍵。這就意味著,當在課程表中插入一條記錄時,`student_id`列中的值必須是學生表中已存在的一個`id`,否則將無法成功插入。
外鍵和主鍵對于數據庫的管理和安全性非常重要。使用外鍵關聯兩張表會使表之間的關系更加清晰、明確。當在主表中執行行更新和刪除操作時,可以通過外鍵關系自動更新次要表中的數據。在多表查詢中,外鍵也可以大大減少查詢的操作次數,提高查詢效率。