Bài viết đề cập đến cú pháp cơ bản của các câu lệnh INSERT trong MySQL và giải thích cách sử dụng lệnh INSERT trong bảng MySQL bằng dbForge Studio cho MySQL
Giới thiệu về Tuyên bố INSERT của MySQL
Câu lệnh INSERT dùng để thêm dữ liệu vào bảng. Lệnh INSERT INTO chèn một hoặc nhiều hàng vào bảng MySQL. Tùy thuộc vào số lượng hàng bạn muốn thêm, cú pháp hơi khác một chút
MySQL INSERT INTO – Cú pháp chung
Khi chèn một hàng vào bảng MySQL, cú pháp như sau
INSERT INTO table_name(column_1,column_2,column_3) VALUES (value_1,value_2,value_3);Trong truy vấn INSERT INTO, bạn nên chỉ định thông tin sau
- INSERT INTO table_name (column_1, column_2, column_3, ...) VALUES (value_list_1), (value_list_2), ... (value_list_n); 2. Một bảng MySQL mà bạn muốn thêm một hàng mới
- INSERT INTO table_name (column_1, column_2, column_3, ...) VALUES (value_list_1), (value_list_2), ... (value_list_n); 3. Danh sách các cột mà hàng mới sẽ chứa. Các cột cách nhau bởi dấu phẩy đặt trong ngoặc tròn
- INSERT INTO table_name (column_1, column_2, column_3, ...) VALUES (value_list_1), (value_list_2), ... (value_list_n); 4. Danh sách các giá trị được phân tách bằng dấu phẩy trong ngoặc tròn sẽ được sử dụng cho từng cột tương ứng
Số cột và giá trị phải khớp nhau;
Khi chèn nhiều hàng vào bảng MySQL, cú pháp như sau
INSERT INTO table_name (column_1, column_2, column_3, ...) VALUES (value_list_1), (value_list_2), ... (value_list_n);Ở đây bạn nên nhập các thông tin sau
- INSERT INTO table_name (column_1, column_2, column_3, ...) VALUES (value_list_1), (value_list_2), ... (value_list_n); 2. Một bảng mà bạn muốn chèn dữ liệu vào
- INSERT INTO table_name (column_1, column_2, column_3, ...) VALUES (value_list_1), (value_list_2), ... (value_list_n); 6. Một danh sách các cột để lưu trữ dữ liệu. Các cột cách nhau bởi dấu phẩy đặt trong ngoặc tròn
- INSERT INTO table_name (column_1, column_2, column_3, ...) VALUES (value_list_1), (value_list_2), ... (value_list_n); 7. Danh sách các giá trị sẽ được chèn vào một hàng. Các giá trị được phân tách bằng dấu phẩy trong ngoặc tròn. Số lượng giá trị trong mỗi danh sách phải khớp với số lượng cột được chỉ định trong INSERT INTO table_name (column_1, column_2, column_3, ...) VALUES (value_list_1), (value_list_2), ... (value_list_n); 8
Ngoài ra, các hàng được phân tách bằng dấu phẩy trong mệnh đề GIÁ TRỊ
Các ví dụ CHÈN MySQL
Hãy khám phá một số ví dụ về việc sử dụng câu lệnh INSERT của MySQL khi thực hiện các tác vụ liên quan đến dữ liệu
Để bắt đầu, hãy tạo ba bảng. Khách hàng, Sản phẩm01 và Điện thoại thông minh bằng cách thực thi đoạn mã sau
CREATE TABLE Customers ( ID int, Age int, FirstName varchar(20), LastName varchar(20) ); -- Creating the Products table CREATE TABLE Products01 ( ID int, ProductName varchar(30) NOT NULL, Manufacturer varchar(20) NOT NULL, Price decimal NOT NULL, ProductCount int DEFAULT 0 ); CREATE TABLE Smartphones ( ID int, ProductName varchar(30) NOT NULL, Manufacturer varchar(20) NOT NULL, Price decimal NOT NULL, ProductCount int DEFAULT 0 );Lệnh INSERT trong MySQL được sử dụng để chèn các giá trị được chỉ định
Lệnh này có thể được sử dụng khi cần thêm giá trị và cột cho các hàng đã chỉ định. Ví dụ: chỉ thêm dữ liệu cho cột FirstName và LastName của bảng Khách hàng
INSERT INTO table_name (column_1, column_2, column_3, ...) VALUES (value_list_1), (value_list_2), ... (value_list_n); 0Lệnh chèn các giá trị vào cột FirstName và LastName của bảng MySQL Khách hàng. Vì cột Tuổi sử dụng Null làm giá trị mặc định, MySQL sẽ chèn Null vào cột Tuổi nếu bạn không chỉ định rõ ràng giá trị của nó trong câu lệnh INSERT
Lệnh INSERT trong MySQL dùng để chèn giá trị vào tất cả các cột
Lệnh này có thể được sử dụng để thêm giá trị cho tất cả các cột. Ví dụ: thêm giá trị vào bảng Product01. Hãy nhớ rằng thứ tự của các giá trị phải khớp với thứ tự của các cột trong bảng
INSERT INTO table_name (column_1, column_2, column_3, ...) VALUES (value_list_1), (value_list_2), ... (value_list_n); 1Câu lệnh chèn các giá trị đã chỉ định vào tất cả các cột của bảng Product01
Lệnh INSERT trong MySQL dùng để chèn giá trị mặc định
Lệnh này có thể được sử dụng khi giá trị mặc định được chỉ định cho cột. Ví dụ: giá trị mặc định cho cột ProductCount của bảng Products01 bằng 0. Để chèn giá trị mặc định, hãy thực hiện một trong các truy vấn sau
INSERT INTO table_name (column_1, column_2, column_3, ...) VALUES (value_list_1), (value_list_2), ... (value_list_n); 2____13Câu lệnh chèn giá trị mặc định cho cột ProductCount
MySQL INSERT được sử dụng để chèn một giá trị cụ thể
Để chèn giá trị vào cột, chúng ta có thể sử dụng mệnh đề SET thay cho mệnh đề VALUES
INSERT INTO table_name (column_1, column_2, column_3, ...) VALUES (value_list_1), (value_list_2), ... (value_list_n); 4Ở đầu ra, câu lệnh chèn các giá trị vào các cột dựa trên các giá trị được chỉ định rõ ràng trong mệnh đề SET
MySQL INSERT dùng để chèn dữ liệu từ bảng khác
Sử dụng mệnh đề SELECT trong câu lệnh INSERT INTO của MySQL cho phép chèn các hàng được tạo bởi câu lệnh SELECT vào bảng MySQL đích
INSERT INTO table_name (column_1, column_2, column_3, ...) VALUES (value_list_1), (value_list_2), ... (value_list_n); 5Trong trường hợp này, câu lệnh INSERT INTO sao chép các hàng bạn đã truy xuất bằng câu lệnh SELECT từ bảng Smartphones và chèn chúng vào bảng Products01
Nếu bạn muốn truy xuất các hàng cụ thể dựa trên điều kiện, hãy áp dụng các tùy chọn lọc trong mệnh đề WHERE. Hãy nhớ rằng cấu trúc của cả hai bảng phải khớp nhau;
INSERT INTO table_name (column_1, column_2, column_3, ...) VALUES (value_list_1), (value_list_2), ... (value_list_n); 6Lệnh này thêm vào các giá trị bảng Products01 từ bảng Điện thoại thông minh có giá bằng 34000
Bạn cũng có thể sao chép và chèn các cột đã chỉ định từ một bảng khác. Tuy nhiên, trong trường hợp này, hãy đảm bảo rằng không có bản ghi nào có tên được chỉ định trong bảng đích;
MySQL INSERT – bỏ qua lỗi khi chèn dữ liệu
Trong trường hợp bạn gặp phải lỗi hoặc bất kỳ hành vi không mong muốn nào trong khi thực hiện chèn hàng vào bảng MySQL, thì quá trình thực thi câu lệnh sẽ bị gián đoạn. Các hàng có giá trị hợp lệ và không hợp lệ không được thêm vào bảng. Ví dụ: thực hiện truy vấn sau
INSERT INTO table_name (column_1, column_2, column_3, ...) VALUES (value_list_1), (value_list_2), ... (value_list_n); 1Câu lệnh này trả về lỗi vì bản ghi có ID này đã tồn tại. Bây giờ, hãy sửa đổi câu lệnh bằng IGNORE. Nó cho phép bạn chèn các hàng có giá trị hợp lệ nhưng bỏ qua các hàng có giá trị không hợp lệ
INSERT INTO table_name (column_1, column_2, column_3, ...) VALUES (value_list_1), (value_list_2), ... (value_list_n); 1Kết quả là tập lệnh được thực thi mà không có lỗi. MySQL sẽ thông báo cho bạn rằng các hàng đã được thêm vào bảng
Tạo truy vấn INSERT INTO với dbForge Studio cho MySQL
Tất cả các thao tác dữ liệu, bao gồm các thao tác Tạo, Chọn, Chèn, Cập nhật, Xóa hoặc Bỏ có thể được thực hiện dễ dàng với dbForge Studio dành cho MySQL. Công cụ này cung cấp một tập hợp phong phú các khả năng và tính năng nâng cao để tăng năng suất và tiết kiệm thời gian của bạn khi phát triển, quản lý và triển khai cơ sở dữ liệu MySQL trong giao diện dễ sử dụng
Giả sử chúng ta cần thêm một khách hàng mới vào cơ sở dữ liệu. Trong dbForge Studio dành cho MySQL, chúng ta có thể sử dụng tính năng Tạo tập lệnh dưới dạng để chèn một hoặc nhiều hàng vào bảng MySQL
Để chèn thông tin về khách hàng, bạn làm như sau
1. Trong Database Explorer, bấm chuột phải vào bảng được yêu cầu và chọn Tạo tập lệnh dưới dạng > CHÈN > Đến cửa sổ SQL mới. Trình soạn thảo mã SQL mở chứa tập lệnh được tạo tự động
2. Trong trình soạn thảo mã SQL, hãy chèn dữ liệu cho các cột đã chỉ định (first_name, last_name và email) vào mệnh đề GIÁ TRỊ
3. Trên thanh công cụ chuẩn, nhấp vào Thực thi. Câu lệnh thêm Tên, Họ và email của khách hàng mới vào dòng dưới cùng của lưới
Sự kết luận
Trong bài viết này, chúng ta đã xem xét một câu lệnh INSERT của MySQL và các ví dụ, khi nào có thể sử dụng lệnh này, đồng thời cung cấp một ví dụ cụ thể về cách làm việc với các truy vấn INSERT của MySQL trong dbForge Studio dành cho MySQL
Tải xuống phiên bản dùng thử 30 ngày miễn phí của dbForge Studio dành cho MySQL để đánh giá tất cả các tính năng hữu ích mà công cụ cung cấp