INSERT INTO 語句用於向數據庫表中插入新紀錄。
向數據庫表插入數據
INSERT INTO 語句用於向數據庫表添加新紀錄。
語法
INSERT INTO table_name
VALUES (value1, value2,....)
您還可以規定希望在其中插入數據的列:
INSERT INTO table_name (column1, column2,...)
VALUES (value1, value2,....)
注釋:SQL 語句對大小寫不敏感。INSERT INTO 與 insert into 相同。
為了讓 PHP 執行該語句,我們必須使用 mysql_query() 函數。該函數用於向 MySQL 連接發送查詢或命令。
例子
在前面的章節,我們創建了一個名為 "Person" 的表,有三個列:"Firstname", "Lastname" 以及 "Age"。我們將在本例中使用同樣的表。下面的例子向 "Person" 表添加了兩個新紀錄:
<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("my_db", $con);
mysql_query("INSERT INTO person (FirstName, LastName, Age)
VALUES ('Peter', 'Griffin', '35')");
mysql_query("INSERT INTO person (FirstName, LastName, Age)
VALUES ('Glenn', 'Quagmire', '33')");
mysql_close($con);
?>
把來自表單的數據插入數據庫
現在,我們創建一個 HTML 表單,這個表單可把新紀錄插入 "Person" 表。
這是這個 HTML 表單:
<html>
<body>
<form action="insert.php" method="post">
Firstname: <input type="text" name="firstname" />
Lastname: <input type="text" name="lastname" />
Age: <input type="text" name="age" />
<input type="submit" />
</form>
</body>
</html>
當用戶點擊上例中 HTML 表單中的提交按鈕時,表單數據被發送到 "insert.php"。"insert.php" 文件連接數據庫,並通過 $_POST 變量從表單取回值。然後,mysql_query() 函數執行 INSERT INTO 語句,一條新的記錄會添加到數據庫表中。
下面是 "insert.php" 頁面的代碼:
<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("my_db", $con);
$sql="INSERT INTO person (FirstName, LastName, Age)
VALUES
('$_POST[firstname]','$_POST[lastname]','$_POST[age]')";
if (!mysql_query($sql,$con))
{
die('Error: ' . mysql_error());
}
echo "1 record added";
mysql_close($con)
?>