Để chèn dữ liệu vào các table MySQL ta sử dụng câu lệnh truy vấn INSERT INTO. Câu lệnh này có thể thực hiện tại dấu nhắc mysql> hoặc trong các script PHP.
Cú pháp:
INSERT INTO table_name (field1, field2,...fieldN) VALUES (value1, value2,...valueN );
Tác dụng:
Lệnh được sử dụng để thêm một record mới vào table <table_name> của một cơ sở dữ liệu MySQL đang được mở. Các giá trị <value1>, <value2>,… sẽ được ghi vào các field tương ứng: <field1>, <field2>,... Các <value> phải có kiểu dữ liệu tương ứng với kiểu của <field> mà nó được ghi vào.
Nếu value là một string thì ta phải sử dụng cặp dấu nháy đơn (‘, ‘) hoặc nháy kép (“, ”) để bọc nó lại.
1. Thực hiện lệnh INSERT tại dấu nhắc mysql>:
Để chèn thêm 3 record vào table tutorial_tbl (gồm 3 field: tutorial_title, tutorial_author, submission_date) của cơ sở dữ liệu tutorials ta có thể thực hiện nhau sau:
------------------------------------------------------
root@ubuntu# mysql -u root -p password;
Enter password:*******
mysql> use TUTORIALS;
Database changed
mysql>
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>
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>
mysql> INSERT INTO tutorials_tbl
->(tutorial_title, tutorial_author, tutorial_author)
->VALUES
->("JAVA Tutorial", "Sanjay", '2013-05-06');
Query OK, 1 row affected (0.01 sec)
mysql>
-------------------------------------------------------
Record thứ nhất có field: tutorial_title = “Learn PHP”; tutorial_author = “John Poul” vàtutorial_author = NOW().
Hàm Now() được sử dụng để lấy ngày-tháng-năm hiện tại của hệ thống.
2. Thực hiện lệnh INSERT trong scipt PHP:
Trong trường hợp này ta sử dụng câu lệnh INSERT INTO trong hàm mysql_query():
--------------------------
<html>
<head>
<title>Add New Record in MySQL Database</title>
</head>
<body>
//----------
<?php
If (isset($_POST['add']))
{
$dbhost = 'localhost:3036';
$dbuser = 'root';
$dbpass = 'a123456789z';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
If (! $conn )
{
die('Could not connect: ' . mysql_error());
}
//---------------------------------------------------
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')";
mysql_select_db('TUTORIALS');
$retval = mysql_query( $sql, $conn );
If (! $retval )
{
die('Could not enter data: ' . mysql_error());
}
echo "Entered data successfully\n";
mysql_close($conn);
}
else
{
?>
----------------
<form method="post" action="<?php $_PHP_SELF ?>">
<table width="600" border="0" cellspacing="1" cellpadding="2">
<tr>
<td width="250">Tutorial Title</td>
<td>
<input name="tutorial_title" type="text" id="tutorial_title">
</td>
</tr>
<tr>
<td width="250">Tutorial Author</td>
<td>
<input name="tutorial_author" type="text" id="tutorial_author">
</td>
</tr>
<tr>
<td width="250">Submission Date [yyyy-mm-dd]</td>
<td>
<input name="submission_date" type="text" id="submission_date">
</td>
</tr>
<tr>
<td width="250"> </td>
<td> </td>
</tr>
<tr>
<td width="250"> </td>
<td>
<input name="add" type="submit" id="add" value="Add Tutorial">
</td>
</tr>
</table>
</form>
<?php
}
?>
</body>
</html>
------------
Điểm cần lưu ý nhất của bài này là cách cấu tạo câu lệnh INSERT INTO, ở đây các value được lấy từ giá trị các biến, mà giá trị của biến lấy từ các hộp trên form, thông qua phương thức POST.
Đây cũng chính là lý do mà các biến: '$tutorial_title', '$tutorial_author', '$submission_date' phải được bọc trong cặp dấu nhấy đơn.
(Nguyễn Kim Tuấn - K.CNTT)
» Tin mới nhất:
» Các tin khác: