Xin chào các bạn, trong bài ngày hôm nay mình sẽ hướng dẫn các bạn tạo bảng trong MySQL. Đây là một phần rất quan trọng trong việc lưu trữ dữ liệu của bạn nên các bạn hãy theo dõi thật kỹ nhé.
Một câu lệnh tạo bảng yêu cầu các thành phần sau:
- Tên bảng
- Tên của các trường dữ liệu
- Định nghĩa cho từng trường dữ liệu.
Cú pháp tạo bảng trong MySQL
Để tạo bảng trong Mysql, bạn sử dụng câu lệnh CREATE TABLE của MySQL. Câu lệnh CREATE TABLE là một trong những câu lệnh phức tạp nhất của MySQL.
Cú pháp đơn giản của câu lệnh CREATE TABLE:
Đầu tiên, bạn chỉ định tên của bảng mà bạn muốn tạo sau mệnh đề CREATE TABLE. Tên bảng không được trùng lặp trong cơ sở dữ liệu. IF NOT EXISTS để kiểm tra xem bảng mà bạn đang tạo đã tồn tại trong cơ sở dữ liệu chưa. Nếu bảng đã tồn tại, MySQL sẽ bỏ qua toàn bộ câu lệnh và sẽ không tạo ra bất kỳ bảng mới nào. Các bạn nên sử dụng IF NOT EXISTS trong mỗi câu lệnh CREATE TABLE để tránh lỗi tạo bảng mới đã tồn tại.
Thứ hai, bạn chỉ định danh sách các cột cho bảng trong phần danh sach cot, các cột được phân tách nhau bằng dấu phẩy.
Thứ ba, bạn có thể tùy chọn chỉ định công cụ lưu trữ cho bảng trong điều khoản ENGINE. Bạn có thể sử dụng bất kỳ công cụ lưu trữ nào như InnoDB và MyISAM. Nếu bạn không khai báo rõ ràng công cụ lưu trữ, MySQL sẽ sử dụng InnoDB theo mặc định.
Để xác định một cột cho bảng trong câu lệnh CREATE TABLE, bạn sử dụng cú pháp sau:
Các thành phần quan trọng nhất của cú pháp trên là:
- Thecolumn_name: chỉ định tên cột. Mỗi cột có một loại dữ liệu cụ thể và độ dài tối đa, ví dụ: VARCHAR (255).
- NOT NULL: Cột không được khởi tạo NULL.
- DEFAULT value: được sử dụng để xác định giá trị mặc định của cột.
- AUTO_INCREMENT: chỉ ra rằng giá trị của cột được tạo bởi một cột tự động bất cứ khi nào một hàng mới được chèn vào bảng.
Nếu bạn muốn đặt một cột hoặc một tập hợp các cột làm khóa chính, bạn sử dụng cú pháp sau:
Ví dụ về tạo bảng trong MySQL
Đoạn code dưới đây sẽ giúp bạn tạo một bảng trong MySQL:
Bảng tasks có các cột sau:
- Task_id là một cột tăng tự động. Nếu bạn sử dụng câu lệnh INSERT để thêm một hàng mới vào bảng mà không chỉ định một giá trị cho cột task_id, cột task_id sẽ lấy một số nguyên được tạo tự động bắt đầu bằng một. Task_id là cột khóa chính.
- Cột tieu_de là cột chuỗi ký tự biến có độ dài tối đa là 255. Có nghĩa là bạn không thể chèn một chuỗi có độ dài lớn hơn 255 vào cột này. NOT NULL chỉ ra rằng cột phải có một giá trị. Nói cách khác, bạn phải cung cấp một giá trị khi bạn chèn hoặc cập nhật cột này.
- ngay_bat_dau và ngay_ket_thuc là các cột ngày chấp nhận giá trị NULL.
- trang_thai và uu_tien là các cột TINYINT không cho phép sử dụng giá trị NULL.
- Cột mo_ta là cột TEXT cho phép sử dụng giá trị NULL.
Kết luận
Như vậy trong bài học ngày hôm nay mình đã giới thiệu đến các bạn cách tạo bảng trong MySQL. Trong bài tiếp theo chúng ta sẽ tìm hiểu về cách xóa một bảng trong MySQL.
Chúc các bạn học tập tốt!