mysql 數據庫使用 insert into 語句插入新的數據。
我們可以通過 mysql> 命令窗口向表中插入數據,或者通過php腳本來插入數據。
1. mysql 插入數據的語法
以下為向mysql數據表插入數據通用的 insert into sql語法:
insert into table_name ( field1, field2,...fieldn ) values ( value1, value2,...valuen );
如果數據是字符型,必須使用單引號或者雙引號,如:"value"。
2. 通過命令窗口插入數據
以下我們將使用 sql insert into 語句向 mysql 數據表 article 插入數據
mysql 插入數據的范例
以下范例中我們將向 article 表插入三條數據:
root@host# mysql -u root -p password; enter password:******* mysql> use yapf; database changed mysql> insert into article -> (title, author, submission_date) -> values -> ("學習 php", "碩編程", now()); query ok, 1 rows affected, 1 warnings (0.01 sec) mysql> insert into article -> (title,author, submission_date) -> values -> ("學習 mysql", "碩編程", now()); query ok, 1 rows affected, 1 warnings (0.01 sec) mysql> insert into article -> (title, author, submission_date) -> values -> ("java 教程", "yapf.com", '2016-05-06'); query ok, 1 rows affected (0.00 sec) mysql>
注意: 使用箭頭標記 -> 不是 sql 語句的一部分,它僅僅表示一個新行,如果一條sql語句太長,我們可以通過回車鍵來創建一個新行來編寫 sql 語句,sql 語句的命令結束符為分號 ;。
在以上范例中,我們并沒有提供 id 的數據,因為該字段我們在創建表的時候已經設置它為 auto_increment(自動增加) 屬性。 所以,該字段會自動遞增而不需要我們去設置。范例中 now() 是一個 mysql 函數,該函數返回日期和時間。
接下來我們可以通過以下語句查看數據表數據:
select * from article;
3. 使用php腳本插入數據
你可以使用php 的 mysqli_query() 函數來執行 sql insert into命令來插入數據。
該函數有兩個參數,在執行成功時返回 true,否則返回 false。
1)使用php腳本插入數據的語法
mysqli_query(connection,query,resultmode);
參數 | 描述 |
---|---|
connection | 必需。規定要使用的 mysql 連接。 |
query | 必需,規定查詢字符串。 |
resultmode |
可選。一個常量。可以是下列值中的任意一個:
|
2)使用php腳本插入數據的范例
以下范例中程序接收用戶輸入的三個字段數據,并插入數據表中:
mysql 范例
$dbhost = 'localhost'; // mysql服務器主機地址
$dbuser = 'root'; // mysql用戶名
$dbpass = '123456'; // mysql用戶名密碼
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn ) { die('連接失敗: ' . mysqli_error($conn));}
echo '連接成功';// 設置編碼,防止中文亂碼
mysqli_query($conn , "set names utf8");
$title = '學習 python';
$author = 'yapf.com';
$submission_date = '2016-03-06';
$sql = "insert into article ". "(title,author, submission_date) ". "values ". "('$title','$author','$submission_date')"; mysqli_select_db( $conn, 'yapf' );
$retval = mysqli_query( $conn, $sql );
if(! $retval ) { die('無法插入數據: ' . mysqli_error($conn));} echo "數據插入成功\n";mysqli_close($conn);
?>