Câu lệnh MySQL INSERT được sử dụng để lưu trữ hoặc thêm dữ liệu trong bảng MySQL trong cơ sở dữ liệu. Chúng ta có thể thực hiện chèn bản ghi theo hai cách bằng một truy vấn duy nhất trong MySQL
- Chèn bản ghi vào một hàng
- Chèn bản ghi vào nhiều hàng
cú pháp
Dưới đây là cú pháp chung của lệnh SQL INSERT INTO để chèn một bản ghi vào bảng MySQL
Trong cú pháp trên, trước tiên chúng ta phải chỉ định tên bảng và danh sách các cột được phân tách bằng dấu phẩy. Thứ hai, chúng tôi cung cấp danh sách các giá trị tương ứng với tên cột sau mệnh đề VALUES
GHI CHÚ. Tên trường là tùy chọn. Nếu chúng tôi muốn chỉ định các giá trị một phần, tên trường là bắt buộc. Nó cũng đảm bảo rằng tên và giá trị cột phải giống nhau. Ngoài ra, vị trí của các cột và giá trị tương ứng phải giống nhau
Nếu chúng ta muốn chèn nhiều bản ghi trong một lệnh, hãy sử dụng câu lệnh sau
Trong cú pháp trên, tất cả các hàng phải được phân tách bằng dấu phẩy trong các trường giá trị
Ví dụ CHÈN MySQL
Hãy cho chúng tôi hiểu cách các câu lệnh INSERT hoạt động trong MySQL với sự trợ giúp của nhiều ví dụ. Đầu tiên, tạo một bảng "People" trong cơ sở dữ liệu bằng lệnh sau
1. Nếu chúng tôi muốn lưu trữ các bản ghi duy nhất cho tất cả các trường, hãy sử dụng cú pháp như sau
2. Nếu chúng tôi muốn lưu trữ nhiều bản ghi, hãy sử dụng các câu lệnh sau nơi chúng tôi có thể chỉ định tất cả các tên trường hoặc không chỉ định bất kỳ trường nào
3. Nếu chúng tôi muốn lưu trữ các bản ghi mà không đưa ra tất cả các trường, chúng tôi sử dụng các câu lệnh trường một phần sau đây. Trong trường hợp này, bắt buộc phải chỉ định tên trường
Trong kết quả bên dưới, chúng ta có thể thấy rằng tất cả các câu lệnh INSERT đã được thực thi thành công và lưu trữ giá trị trong bảng một cách chính xác
Chúng ta có thể sử dụng cú pháp dưới đây để hiển thị các bản ghi của bảng People
Ta sẽ được kết quả như sau
Chèn ngày vào bảng MySQL
Chúng ta cũng có thể sử dụng INSERT STATEMENT để thêm ngày vào bảng MySQL. MySQL cung cấp một số kiểu dữ liệu để lưu trữ ngày như DATE, TIMESTAMP, DATETIME, và YEAR. Định dạng mặc định của ngày trong MySQL là YYYY-MM-DD
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
2. Một bảng MySQL mà bạn muốn thêm một hàng mớiINSERT 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ònINSERT 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 ứngINSERT INTO table_name [column_1, column_2, column_3, ...] VALUES [value_list_1], [value_list_2], ... [value_list_n];
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
2. Một bảng mà bạn muốn chèn dữ liệu vàoINSERT 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ònINSERT 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 trongINSERT INTO table_name [column_1, column_2, column_3, ...] VALUES [value_list_1], [value_list_2], ... [value_list_n];
8INSERT INTO table_name [column_1, column_2, column_3, ...] VALUES [value_list_1], [value_list_2], ... [value_list_n];
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
Phần 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