1. View
1.1. là một câu lệnh SQL được lưu trữ trong cơ sở dữ liệu với một tên xác định
1.2. Hiển thị các hàng của 1 bảng hoặc nhiều bảng tùy vào câu lệnh SQL
1.3. Ưu điểm
1.3.1. Cấu trúc dữ liệu theo cách mà người dùng thấy tự nhiên, trực quan
1.3.2. Hạn chế quyền truy cập vào dữ liệu
1.3.3. Tóm tắt dữ liệu từ các bảng khác nhau
1.4. Tạo view: CREATE VIEW view_name as select column1, column 2,... from table_name where condition
1.4.1. WITH CHECK OPTION: đảm bảo tất cả INSERT và UPDATE đều đáp ứng (các) điều kiện trong định nghĩa view
1.5. cập nhật bản ghi: UPDATE view_name set . . . where
1.6. chèn hàng: INSERT INTO view_name VALUE()
1.7. xóa hàng: DELETE FROM view_name WHERE
1.8. xóa view: DROP VIEW view_name
2. Index
2.1. Chỉ mục của bảng giúp tìm kiếm 1 cách nhanh chóng
2.2. Thay đổi cấu trúc bảng cần add index lại
2.3. Các loại index: B-tree, Hash, R-tree
2.3.1. B-tree: gồm node, root, branch, leaf
2.3.1.1. giá trị các node tăng từ trái qua phải
2.3.1.2. Sử dụng khi muốn tìm dữ liệu trong một khoảng
2.3.2. Hash: dạng key - value
2.3.2.1. Chỉ sử dụng với toán tử = và <>
2.3.2.2. Không thể tối ưu hóa toán tử ORDER BY
2.3.2.3. Sử dụng key để tìm bản ghi
2.3.2.4. Tìm kiếm nhanh hơn B-tree
2.4. Tạo index: CREATE UNIQUE INDEX index_name ON table_name
2.5. Thêm index: ALTER TABLE tbl_name ADD INDEX index_name (col 1, col 2, . . .)
2.5.1. index không thể null = PRIMARY KEY
2.5.2. index có thể null: thêm UNIQUE INDEX
2.5.3. Tìm kiếm văn bản: ADD FULLTEXT index_name
2.6. Xóa index: DROP INDEX index_name
2.7. Lưu ý: không sử dụng trong bảng nhỏ, bảng thường xuyên update, insert, chỉnh sửa, bảng có nhiều giá trị null
3. Store Procedure
3.1. Hàm để thực thi 1 chức năng nào đó
3.2. Sử dụng trên phpmyadmin: Routines / add routine
3.2.1. IN: giá trị đầu vào
3.2.2. OUT: giá trị đầu ra
3.2.3. CREATE PROCEDURE procedure_name