Hướng Dẫn Cơ Bản Với MySQL – Thiết Kế Database - Long's Blog
Có thể bạn quan tâm
Notes MySQL
Video Hướng dẫn
- [MySQL] Create Database, table
https://youtu.be/fkXIAzu6gec
- [MySQL] Add PRIMARY KEY, FOREIGN KEY Constraint
https://youtu.be/MSrC5gqGhS8
- [MySQL] Create Database ER diagram
https://youtu.be/ScPHoMF_01Q
Create Database
https://www.w3schools.com/sql/sql_create_db.asp
https://youtu.be/fkXIAzu6gec
CREATE DATABASE databasename; CREATE DATABASE mapping;Khi đặt tên nên:
- Không dấu
- Không khoảng trắng
- Viết thường
- Không ký tự đặc biệt
Create Table
https://www.w3schools.com/sql/sql_create_table.asp
https://youtu.be/fkXIAzu6gec
Cú pháp
CREATE TABLE table_name ( column1 datatype, column2 datatype, column3 datatype, .... );Chúng ta có thể khai báo luôn khóa chính lúc tạo bảng luôn, như thế này
CREATE TABLE Persons ( ID int NOT NULL PRIMARY KEY, LastName varchar(255) NOT NULL, FirstName varchar(255), Age int );Lỗi
15:09:03 CREATE TABLE admin( admin_id int, ward varchar(255), district varchar(255), city varchar(255) ) Error Code: 1046. No database selected Select the default DB to be used by double-clicking its name in the SCHEMAS list in the sidebar. 0.000 sec
Lỗi này do cửa sổ query không biết nên truy vấn từ Database nào, trong mysql workbend thì ta nhấp đúp chuột vào Database muốn truy vấn để active nó lên
Select the default DB to be used by double-clicking its name in the SCHEMAS list in the sidebar
Thực hành
CREATE TABLE admin( admin_id int, ward varchar(255), district varchar(255), city varchar(255) );admin
CREATE TABLE street( street_id int, street_type_id int, admin_id int, street_name varchar(255) );street
Mình nên để mấy cái cột liên kết (khoái ngoại, khóa chính) lên đầu bảng cho dễ quản lý
CREATE TABLE poi( poi_id int, category_id int, address_id int, admin_id int, name varchar(255) );poi
CREATE TABLE street_type( street_type_id int, street_type varchar(255) );street_type
CREATE TABLE categories( category_id int, category varchar(255) );categories
CREATE TABLE address( addr_id int, street_id int, admin_id int, addr_no varchar(255) );address
Tạo Khóa chính
https://www.w3schools.com/sql/sql_primarykey.asp
https://youtu.be/MSrC5gqGhS8
Cú pháp
Chúng ta có thể khai báo luôn khóa chính lúc tạo bảng luôn, như thế này
CREATE TABLE Persons ( ID int NOT NULL PRIMARY KEY, LastName varchar(255) NOT NULL, FirstName varchar(255), Age int );Chúng ta nên tạo khi create table luôn
Nếu đã tạo rồi thì giờ ta update lại thôi
ALTER TABLE Persons ADD PRIMARY KEY (ID);Thực hành
ALTER TABLE admin ADD PRIMARY KEY (admin_id); ALTER TABLE street ADD PRIMARY KEY (street_id); ALTER TABLE poi ADD PRIMARY KEY (poi_id); ALTER TABLE street_type ADD PRIMARY KEY (street_type_id); ALTER TABLE categories ADD PRIMARY KEY (category_id); ALTER TABLE address ADD PRIMARY KEY (addr_id);Tạo Khóa ngoại, liên kết bảng
https://www.w3schools.com/sql/sql_foreignkey.asp
https://youtu.be/MSrC5gqGhS8
Cú pháp
Chúng ta có thể khai báo luôn khóa chính lúc tạo bảng luôn, như thế này
CREATE TABLE Orders ( OrderID int NOT NULL, OrderNumber int NOT NULL, PersonID int, PRIMARY KEY (OrderID), FOREIGN KEY (PersonID) REFERENCES Persons(PersonID) );Đối với khóa ngoại thì ta nên tạo xong hết bảng rồi mới tạo khóa ngoại, vì nếu chưa tạo bảng mà tạo khóa ngoại liên kết tới nó thì chương trình sẽ báo lỗi không tồn tại
Nếu đã tạo rồi thì giờ ta update lại thôi
ALTER TABLE Orders ADD FOREIGN KEY (PersonID) REFERENCES Persons(PersonID);Thực hành
-- admin: Không có khóa ngoại -- street -- Cú pháp là ADD FOREIGN KEY ({Tên cột khóa ngoại}) REFERENCES {Tên bảng liên kết}({Khóa chính của bảng liên kết}); -- Bảng này có 2 khóa ngoại ALTER TABLE street ADD FOREIGN KEY (street_type_id) REFERENCES street_type(street_type_id); ALTER TABLE street ADD FOREIGN KEY (admin_id) REFERENCES admin(admin_id); -- poi -- Có 3 khóa ngoại ALTER TABLE poi ADD FOREIGN KEY (category_id) REFERENCES categories(category_id); ALTER TABLE poi ADD FOREIGN KEY (address_id) REFERENCES address(addr_id); ALTER TABLE poi ADD FOREIGN KEY (admin_id) REFERENCES admin(admin_id); -- street_type -- Không có khóa ngoại, nó là bảng danh mục :') -- categories -- Không có khóa ngoại, nó là bảng danh mục :') -- address -- Có 2 khóa ngoại ALTER TABLE address ADD FOREIGN KEY (street_id) REFERENCES street_type(street_type_id); ALTER TABLE address ADD FOREIGN KEY (admin_id) REFERENCES admin(admin_id);Show Diagram
https://dataedo.com/kb/tools/mysql-workbench/create-database-diagram
https://youtu.be/ScPHoMF_01Q
Một số lưu ý khác
ALTER TABLE clients ALTER COLUMN phoneCột khóa chính thường không được phép null NOT NULL và được cho tự động tăng AUTO_INCREMENT
CREATE TABLE Persons ( Personid int NOT NULL AUTO_INCREMENT, LastName varchar(255) NOT NULL, FirstName varchar(255), Age int, PRIMARY KEY (Personid) );Cú pháp chuẩn lúc tạo bảng
https://chartio.com/resources/tutorials/how-to-alter-a-column-from-null-to-not-null-in-sql-server/ https://www.w3schools.com/sql/sql_autoincrement.asp
Từ khóa » Thiết Kế Cơ Sở Dữ Liệu Mysql
-
Hướng Dẫn Thiết Kế Cơ Sở Dữ Liệu Database MYSQL Toàn Tập
-
[MySQL 03] Hướng Dẫn Thiết Kế Cơ Sở Dữ Liệu: Tìm Hiểu Mô Hình Hóa ...
-
Làm Thế Nào để Thiết Kế Một Cơ Sở Dữ Liệu [Phần 1] - Viblo
-
Hướng Dẫn Thiết Kế Cơ Sở Dữ Liệu Database MYSQL - Kipalog
-
Thiết Kế Database MySQL Từ Con Số 0 - Kipalog
-
Phân Tích Thiết Kế CSDL (database) | Web Bán Hàng PHP/MySQL
-
Cách Tạo Cơ Sở Dữ Liệu MySQL – Amazon Web Services
-
MySQL Là Gì? Hướng Dẫn Toàn Tập Về MySQL
-
Xây Dựng Cơ Sở Dữ Liệu Trên MySQL - 123doc
-
Cách Thiết Kế Database đáp ứng Truy Xuất Cao Lên đến 1 Triệu
-
Khái Quát Về Thiết Kế Web Chuyên Nghiệp Với MySQL
-
5 Công Cụ Giao Diện (GUI) Cho Thiết Kế Và Quản Trị CSDL MySQL
-
[PDF] Bài 8 - PHP - MySQL - Soict
-
Thiết Kế Cơ Sở Dữ Liệu MySQL Bằng Microolap