Làm cách nào để có nhiều hàng trong MySQL?
Đôi khi bạn có thể cần chèn nhiều hàng dữ liệu trong MySQL. MySQL cho phép bạn nhập nhiều hàng thông tin với một truy vấn duy nhất. Trong bài viết này, chúng ta sẽ xem xét cách chèn nhiều hàng trong MySQL Show
Cách chèn nhiều hàng trong MySQLDưới đây là các bước để chèn nhiều hàng trong MySQL. Có nhiều cách để chèn nhiều hàng trong MySQL. Chúng ta sẽ xem xét từng phương pháp một Chèn nhiều hàng bằng INSERTGiả sử bạn có bảng nhân viên sau (id, first_name, last_name) mysql> create table employees(id int, first_name varchar(255), last_name varchar(255)); Đây là cú pháp để chèn nhiều hàng bằng câu lệnh INSERT INSERT INTO table_name(column1, column2, ...), values(row1_value1, row1_value2,...), (row2_value1, row2_value2,...), ... Trong truy vấn trên, bạn cần đề cập đến tên bảng mà bạn cần chèn giá trị vào đó. Tiếp theo, bạn cần nhập các giá trị của từng hàng được đặt trong dấu ngoặc tròn '()' theo cách phân tách bằng dấu phẩy Cũng đọc. Cách sao chép dữ liệu từ bảng này sang bảng khác Đây là truy vấn SQL để chèn nhiều hàng thông tin vào bảng nhân viên mysql> insert into employees(id, first_name, last_name) Cũng đọc. Cách cập nhật một cột dựa trên một cột khác Chèn nhiều hàng từ CHỌNBạn cũng có thể chèn nhiều hàng dữ liệu vào bảng của mình bằng cách sử dụng kết quả của truy vấn CHỌN Đây là cú pháp truy vấn SQL để sao chép dữ liệu từ bảng này sang bảng khác bằng cách sử dụng câu lệnh INSERT INTO INSERT INTO table1 (column1, column2, ...) select column1, column2, ... from table2 Trong câu truy vấn trên, chúng ta chọn cột1, cột2,… từ bảng2 và chèn chúng vào bảng1 Xin lưu ý, các cột được sử dụng trong câu lệnh INSERT INTO và câu lệnh SELECT phải có cùng tên và thứ tự. Nếu không, bạn sẽ gặp lỗi Đây là câu truy vấn SQL để sao chép dữ liệu từ bảng employee sang bảng employee2 mysql> insert into employees2(id, first_name, last_name) select id, first_name, last_name from employees; mysql> select * from employees2; +------+------------+-----------+ | id | first_name | last_name | +------+------------+-----------+ | 1 | John | Doe | | 2 | Jane | Doe | +------+------------+-----------+ Cũng đọc. Cách cập nhật nhiều cột trong MySQL Chèn nhiều hàng không trùng lặpNếu bạn muốn tự động tránh các bản ghi trùng lặp khi chèn nhiều giá trị vào bảng của mình, hãy sử dụng từ khóa IGNORE sau INSERT trong truy vấn SQL của bạn Chào mừng đến với hướng dẫn không. 3 trong loạt bài hướng dẫn về MySQL của chúng tôi. Trong hướng dẫn trước, chúng ta đã thảo luận về việc tạo bảng và chèn hàng vào bảng. Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách chọn một hàng cũng như nhiều hàng từ một bảng Chọn một hàngBảng 2 mà chúng ta đã tạo trong hướng dẫn trước có ba hàng. Chạy 3 trên bảng trả về các hàng sauTrong phần hướng dẫn này, chúng ta sẽ viết mã để chọn một hàng từ bảng này. Chúng ta sẽ viết một hàm trả về giá sản phẩm khi tên sản phẩm được nhập làm đầu vào. Truy vấn để làm điều này được cung cấp dưới đây
Truy vấn trên sẽ trả về một hàng và sẽ trả về cột 4 từ hàng đó. Truy vấn trên sẽ trả về 5Bây giờ chúng ta đã có truy vấn sẵn sàng, hãy tiếp tục và viết mã cho nó Bước đầu tiên là tạo một tuyên bố đã chuẩn bị. Các câu lệnh đã chuẩn bị được sử dụng để tham số hóa một truy vấn SQL để có thể chạy cùng một truy vấn với các đối số khác nhau một cách hiệu quả. Nó cũng ngăn sql injection Mẫu cho tuyên bố đã chuẩn bị được cung cấp dưới đây
Chúng tôi đã thay thế 6 bằng 7 để tạo mẫu tuyên bố đã chuẩn bịBước tiếp theo là tạo câu lệnh đã chuẩn bị. Điều này được thực hiện bằng cách sử dụng phương thức PrepareContext
Chúng tôi chuyển ngữ cảnh có thời gian chờ thứ hai là 8 cho phương thức 9 trong dòng số. 5. Phương thức này trả về một câu lệnh đã chuẩn bị. Chúng tôi trì hoãn việc đóng tuyên bố ở dòng không. 10Bước tiếp theo là thực hiện câu lệnh đã chuẩn bị này. Điều này được thực hiện bằng phương thức QueryRowContext
Phương thức 0 được gọi trên câu lệnh đã chuẩn bị 1. Phương thức này lấy một bối cảnh và một danh sách các đối số biến đổi làm tham số. Trong trường hợp của chúng tôi, chúng tôi chỉ có một đối số trong truy vấn là tên sản phẩm và chúng tôi chuyển đối số này làm đối số cho phương thức này 0 trả về một hàng. Sau đó, chúng ta cần gọi 3 trên 4 để sao chép các cột được truy vấn trả về vào con trỏ được truyền cho phương thức 3. Ở đây chúng tôi chuyển một con trỏ số nguyên trong dòng số. 3 của đoạn mã trên mà giá sẽ được lưu trữ. Nếu truy vấn trả về nhiều hơn một hàng, phương thức 3 sẽ chỉ trả về hàng đầu tiên và sẽ không có lỗi. Nếu không có hàng nào được trả về, 3 sẽ trả về lỗi. Chúng ta sẽ thảo luận về xử lý lỗi trong phần tiếp theoChức năng hoàn chỉnh được cung cấp dưới đây
xử lý lỗiPhương pháp 3 được sử dụng trong dòng số. 14 của hàm trên sẽ trả về lỗi 9 khi truy vấn không trả về hàng nào. Hãy gọi hàm 0 của chúng ta từ 1 nơi sẽ xử lý lỗi
Chúng tôi chuyển tên sản phẩm là 6 thành 0 và sau đó chuyển đổi trường hợp lỗi. Nếu lỗi thuộc loại 9 ta in ra thông báo không tìm thấy sản phẩm. Trong trường hợp có bất kỳ lỗi nào khác, chúng tôi in thông báo lỗi. Và trong trường hợp 5, chúng tôi in kết quảChương trình này sẽ in
Chọn nhiều hàngTrong phần này, chúng ta sẽ tìm hiểu cách chọn nhiều hàng từ một bảng. Chúng ta sẽ viết một hàm lấy giá tối thiểu và giá tối đa làm tham số và trả về tên và giá của các sản phẩm khớp với truy vấn Truy vấn thực hiện điều đó được cung cấp bên dưới
Truy vấn trên sẽ trả về tên và giá của tất cả các sản phẩm có giá nằm trong khoảng từ 6 đến 7Hầu hết các bước để chọn nhiều hàng tương tự như chọn một hàng mà chúng ta đã thảo luận trong phần trước. Tôi đã cung cấp chức năng hoàn chỉnh để chọn nhiều hàng bên dưới
Tương tự như phần trước, đầu tiên chúng ta tạo một câu lệnh chuẩn bị ở dòng số. 6 chức năng trên. Sau đó, chúng tôi gọi phương thức 8 trên câu lệnh đã chuẩn bị sẵn 1 ở dòng số. 12. Phương thức này sẽ trả về danh sách các hàng được chọn bởi truy vấn. Chúng tôi trì hoãn việc đóng các hàng trong dòng không. 16Sau khi nhận được danh sách hàng, chúng tôi gọi phương thức 0 trên 1 trong dòng số. 18. Điều này chuẩn bị kết quả để đọc bằng phương pháp 3. Nếu có bất kỳ lỗi nào khi gọi 3, nó sẽ trả về 4 và vòng lặp for sẽ kết thúc. Trong trường hợp có lỗi, phương thức 5 trên 1 sẽ trả về một giá trị không phải là 7 và chúng ta cần gọi phương thức đó để tìm hiểu xem có bất kỳ lỗi nào khi ______25_______3 được gọi hay không. Điều này được thực hiện trong dòng không. 25Nếu không có lỗi khi tìm nạp các hàng, 1 sẽ tự động được đóng bởi lệnh gọi phương thức 3 trong dòng số. 18. Nếu có bất kỳ lỗi nào, cần phải gọi rõ ràng cho 1. Vì lệnh gọi tới 2 là idempotent, bạn có thể gọi nó hai lần i. e một lần trong cuộc gọi 3 thành công và một lần nữa trong thời gian hoãn xếp hàng. 16. Do đó, chúng tôi đã trì hoãn các hàng đóng trong dòng không. 16trong dòng không. 19 ta tạo 4 kiểu 2 để lưu trữ kết quảTrong trường hợp bạn không nhớ, cấu trúc 2 có các trường sau
trong dòng không. 20, các cột kết quả được sao chép vào các trường 7 và 8 của cấu trúc 4 và trong dòng số. 23, 4 được thêm vào 1 1 được trả về trong dòng số. 28Bước tiếp theo là gọi hàm này từ main 0Chúng tôi vượt qua 6 và 7 là giá tối thiểu và tối đa cho hàm 5 trong dòng số. 5Nếu có bất kỳ lỗi nào, chúng tôi sẽ quay lại sau khi in lỗi Nếu không có lỗi, tên và giá của sản phẩm phù hợp với truy vấn được in trong dòng số. 11 Chương trình này sẽ in, 1Điều này đưa chúng ta đến cuối hướng dẫn này. Hãy chia sẻ thông tin phản hồi có giá trị của bạn trong các ý kiến Toàn bộ mã có sẵn tại https. //github. com/golangbot/mysqltutorial/blob/master/select/main. đi Nếu bạn muốn quảng cáo trên trang web này, hãy thuê tôi hoặc nếu bạn có bất kỳ yêu cầu phát triển nào khác, vui lòng gửi email tới naveen[at]golangbot[dot]com Giống như hướng dẫn của tôi? . Đóng góp của bạn sẽ giúp tôi tạo ra nhiều hướng dẫn tuyệt vời hơn Làm cách nào để tìm nạp nhiều hàng trong MySQL?Đang tìm nạp nhiều hàng . Khai báo một con trỏ cho một câu lệnh SELECT cụ thể, sử dụng câu lệnh DECLARE Mở con trỏ bằng câu lệnh OPEN Truy xuất từng hàng từ con trỏ một lần bằng cách sử dụng câu lệnh FETCH. Tìm nạp các hàng cho đến khi cảnh báo SQLE_NOTFOUND được trả về. . Đóng con trỏ, sử dụng câu lệnh CLOSE Làm cách nào để có nhiều hàng trong một hàng trong MySQL?Hàm GROUP_CONCAT() trong MySQL được sử dụng để nối dữ liệu từ nhiều hàng vào một trường. Đây là hàm tổng hợp (GROUP BY) trả về giá trị Chuỗi, nếu nhóm chứa ít nhất một giá trị không NULL.
Làm cách nào để chèn 100 hàng trong SQL?Để cộng các hàng, người dùng cần sử dụng câu lệnh chèn. . cú pháp Ví dụ – Một bảng có tên sinh viên phải được chèn các giá trị vào đó. Nó phải được thực hiện như sau Đầu ra – Đầu ra – chèn nhiều hàng. Một bảng có thể lưu trữ tối đa 1000 hàng trong một câu lệnh chèn. . cú pháp Ví dụ – Xét một học sinh ngồi bàn. . Đầu ra – Row_count() trong MySQL là gì?Mô tả. ROW_COUNT() trả về số hàng được cập nhật, chèn hoặc xóa bởi câu lệnh trước . Điều này giống như số lượng hàng mà máy khách mysql hiển thị và giá trị từ hàm API mysql_affected_rows() C. |