top
Loading...
MySQL 插入數據

MySQL 插入數據

MySQL 表中使用 INSERT INTO SQL語句來插入數據。

你可以通過 mysql> 命令提示窗口中向數據表中插入數據,或者通過PHP腳本來插入數據。

語法

以下為向MySQL數據表插入數據通用的 INSERT INTO SQL語法:

INSERT INTO table_name ( field1, field2,...fieldN )
                       VALUES
                       ( value1, value2,...valueN );

如果數據是字符型,必須使用單引號或者雙引號,如:"value"。


通過命令提示窗口插入數據

以下我們將使用 SQL INSERT INTO 語句向 MySQL 數據表 runoob_tbl 插入數據

實例

以下實例中我們將向 runoob_tbl 表插入三條數據:

root@host# mysql -u root -p password;
Enter password:*******
mysql> use RUNOOB;
Database changed
mysql> INSERT INTO runoob_tbl 
    -> (runoob_title, runoob_author, submission_date)
    -> VALUES
    -> ("學習 PHP", "教程", NOW());
Query OK, 1 rows affected, 1 warnings (0.01 sec)
mysql> INSERT INTO runoob_tbl
    -> (runoob_title, runoob_author, submission_date)
    -> VALUES
    -> ("學習 MySQL", "教程", NOW());
Query OK, 1 rows affected, 1 warnings (0.01 sec)
mysql> INSERT INTO runoob_tbl
    -> (runoob_title, runoob_author, submission_date)
    -> VALUES
    -> ("JAVA 教程", "", '2016-05-06');
Query OK, 1 rows affected (0.00 sec)
mysql>

注意: 使用箭頭標記 -> 不是 SQL 語句的一部分,它僅僅表示一個新行,如果一條SQL語句太長,我們可以通過回車鍵來創建一個新行來編寫 SQL 語句,SQL 語句的命令結束符為分號 ;

在以上實例中,我們併沒有提供 runoob_id 的數據,因為該字段我們在創建表的時候已經設置它為 AUTO_INCREMENT(自動增加) 屬性。 所以,該字段會自動遞增而不需要我們去設置。實例中 NOW() 是一個 MySQL 函數,該函數返回日期和時間。

接下來我們可以通過以下語句查看數據表數據:

讀取數據表:

select * from runoob_tbl;

輸出結果:


使用PHP腳本插入數據

你可以使用PHP 的 mysqli_query() 函數來執行 SQL INSERT INTO命令來插入數據。

該函數有兩個參數,在執行成功時返回 TRUE,否則返回 FALSE。

語法

mysqli_query(connection,query,resultmode);
參數 描述
connection 必需。規定要使用的 MySQL 連接。
query 必需,規定查詢字符串。
resultmode

可選。一個常量。可以是下列值中的任意一個:

  • MYSQLI_USE_RESULT(如果需要檢索大量數據,請使用這個)
  • MYSQLI_STORE_RESULT(默認)

實例

以下實例中程序接收用戶輸入的三個字段數據,併插入數據表中:

添加數據

<?php $dbhost = 'localhost:3306'; // mysql服務器主機地址 $dbuser = 'root'; // mysql用戶名 $dbpass = '123456'; // mysql用戶名密碼 $conn = mysqli_connect($dbhost, $dbuser, $dbpass); if(! $conn ) { die('連接失敗: ' . mysqli_error($conn)); } echo '連接成功<br />'; // 設置編碼,防止中文亂碼 mysqli_query($conn , "set names utf8"); $runoob_title = '學習 Python'; $runoob_author = ''; $submission_date = '2016-03-06'; $sql = "INSERT INTO runoob_tbl ". "(runoob_title,runoob_author, submission_date) ". "VALUES ". "('$runoob_title','$runoob_author','$submission_date')"; mysqli_select_db( $conn, 'RUNOOB' ); $retval = mysqli_query( $conn, $sql ); if(! $retval ) { die('無法插入數據: ' . mysqli_error($conn)); } echo "數據插入成功\n"; mysqli_close($conn); ?>

對於含有中文的數據插入,需要添加 mysqli_query($conn , "set names utf8"); 語句。

接下來我們可以通過以下語句查看數據表數據:

讀取數據表:

select * from runoob_tbl;

輸出結果:

北斗有巢氏 有巢氏北斗