MySQL 是一款流行的關系型數據庫管理系統,它支持許多數據庫對象,如表、視圖、索引等。以下是介紹 MySQL 數據庫對象的一些概念。
表:表是 MySQL 中最基本的數據庫對象,它用于存儲數據。表由若干個行和列組成,每行代表一個記錄,每列代表一個屬性,例如一個人的姓名、年齡、性別等。
CREATE TABLE person (
id INT PRIMARY KEY,
name VARCHAR(50) NOT NULL,
age INT,
gender ENUM('male', 'female')
);
視圖:視圖是一種虛擬表,它不存儲數據,而是根據存儲在基礎表中的數據動態生成。視圖可以隱藏表中某些字段或者行,提供更方便的數據查詢。
CREATE VIEW v_person AS
SELECT id, name, age
FROM person
WHERE gender = 'male';
索引:索引是對表中一列或多列值進行排序的結構,它可以加速數據檢索。MySQL 支持多種索引類型,如 B-tree 索引、哈希索引等。
CREATE INDEX idx_age ON person (age);
存儲過程:存儲過程是一段預定義的 SQL 代碼,它可以被多次調用。存儲過程可以接受輸入參數和返回輸出參數,簡化復雜的數據操作。
CREATE PROCEDURE proc_get_person(IN p_age INT, OUT p_name VARCHAR(50))
BEGIN
SELECT name INTO p_name FROM person WHERE age = p_age;
END;
觸發器:觸發器是一段預定義的 SQL 代碼,它可以在表的插入、更新、刪除等事件發生時自動執行。觸發器可以用來實現數據驗證、日志記錄等功能。
CREATE TRIGGER trg_person_ins AFTER INSERT ON person
FOR EACH ROW
BEGIN
INSERT INTO person_log (id, operation) VALUES (NEW.id, 'insert');
END;
MySQL 中還有更多的數據庫對象,例如存儲函數、事件等,它們都可以幫助數據庫管理員更好地管理數據,提高數據的可靠性和安全性。
上一篇css url和src
下一篇CSS ul跟li