Để chèn dữ liệu vào bảng MySQL, bạn cần sử dụng lệnh SQL INSERT INTO. Bạn có thể chèn dữ liệu vào bảng MySQL bằng cách sử dụng dấu nhắc mysql> hoặc bằng cách sử dụng bất kỳ tập lệnh nào như PHP
cú pháp
Đây là cú pháp SQL chung của lệnh INSERT INTO để chèn dữ liệu vào bảng MySQL -
INSERT INTO table_name [ field1, field2,...fieldN ] VALUES [ value1, value2,...valueN ];
Để chèn kiểu dữ liệu chuỗi, bắt buộc phải giữ tất cả các giá trị trong dấu ngoặc kép hoặc dấu nháy đơn. Ví dụ "giá trị"
Chèn dữ liệu từ Command Prompt
Để chèn dữ liệu từ dấu nhắc lệnh, chúng ta sẽ sử dụng lệnh SQL INSERT INTO để chèn dữ liệu vào bảng MySQL tutorials_tbl
Ví dụ
Ví dụ sau sẽ tạo 3 bản ghi vào bảng tutorials_tbl −
root@host# mysql -u root -p password; Enter password:******* mysql> use TUTORIALS; Database changed mysql> INSERT INTO tutorials_tbl ->[tutorial_title, tutorial_author, submission_date] ->VALUES ->["Learn PHP", "John Poul", NOW[]]; Query OK, 1 row affected [0.01 sec] mysql> INSERT INTO tutorials_tbl ->[tutorial_title, tutorial_author, submission_date] ->VALUES ->["Learn MySQL", "Abdul S", NOW[]]; Query OK, 1 row affected [0.01 sec] mysql> INSERT INTO tutorials_tbl ->[tutorial_title, tutorial_author, submission_date] ->VALUES ->["JAVA Tutorial", "Sanjay", '2007-05-06']; Query OK, 1 row affected [0.01 sec] mysql>
LƯU Ý – Xin lưu ý rằng tất cả các dấu mũi tên [->] không phải là một phần của lệnh SQL. Chúng đang chỉ ra một dòng mới và chúng được tạo tự động bởi dấu nhắc MySQL trong khi nhấn phím enter mà không đặt dấu chấm phẩy ở cuối mỗi dòng của lệnh
Trong ví dụ trên, chúng tôi chưa cung cấp tutorial_id vì tại thời điểm tạo bảng, chúng tôi đã cung cấp tùy chọn AUTO_INCREMENT cho trường này. Vì vậy, MySQL sẽ đảm nhiệm việc tự động chèn các ID này. Ở đây, NOW[] là một hàm MySQL, trả về ngày và giờ hiện tại
Chèn dữ liệu bằng PHP Script
PHP sử dụng hàm mysqli query[] hoặc mysql_query[] để chèn bản ghi vào bảng MySQL. Hàm này nhận hai tham số và trả về TRUE nếu thành công hoặc FALSE nếu thất bại
cú pháp
$mysqli->query[$sql,$resultmode]Sr. Không. Tham số & Mô tả1
$sql
Bắt buộc - Truy vấn SQL để chèn bản ghi vào bảng
2$resultmode
Tùy chọn - Hằng số MYSQLI_USE_RESULT hoặc MYSQLI_STORE_RESULT tùy thuộc vào hành vi mong muốn. Theo mặc định, MYSQLI_STORE_RESULT được sử dụng
Ví dụ
Ví dụ này sẽ lấy ba tham số từ người dùng và sẽ chèn chúng vào bảng MySQL − −
Sao chép và dán ví dụ sau vào mysql_example. php −
Add New Record in MySQL Database connect_errno ] { printf["Connect failed: %s
", $mysqli->connect_error]; exit[]; } printf['Connected successfully.
']; if[! get_magic_quotes_gpc[] ] { $tutorial_title = addslashes [$_POST['tutorial_title']]; $tutorial_author = addslashes [$_POST['tutorial_author']]; } else { $tutorial_title = $_POST['tutorial_title']; $tutorial_author = $_POST['tutorial_author']; } $submission_date = $_POST['submission_date']; $sql = "INSERT INTO tutorials_tbl ". "[tutorial_title,tutorial_author, submission_date] "."VALUES ". "['$tutorial_title','$tutorial_author','$submission_date']"; if [$mysqli->query[$sql]] { printf["Record inserted successfully.
"]; } if [$mysqli->errno] { printf["Could not insert record into table: %s
", $mysqli->error]; } $mysqli->close[]; } else { ?> Tutorial Title Tutorial Author Submission Date [ yyyy-mm-dd ]
đầu ra
Truy cập mysql_example. php được triển khai trên máy chủ web apache, nhập chi tiết và xác minh đầu ra khi gửi biểu mẫu
Record inserted successfully.
Trong khi thực hiện thao tác chèn dữ liệu, tốt nhất bạn nên sử dụng hàm get_magic_quotes_gpc[] để kiểm tra xem cấu hình hiện tại cho trích dẫn ma thuật đã được đặt hay chưa. Nếu hàm này trả về false, thì hãy sử dụng hàm addlashes[] để thêm dấu gạch chéo trước dấu ngoặc kép
Bạn có thể đặt nhiều xác thực xung quanh để kiểm tra xem dữ liệu đã nhập có chính xác hay không và có thể thực hiện hành động thích hợp