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 数据表 mydb_jianshu 插入数据
实例
以下实例中我们将向 mydb_jianshu 表插入三条数据:
C:\Users\Administrator.USER-20171227ZP>mysql -u root -p
Enter password:******
mysql> use mydb
Database changed
mysql> INSERT INTO mydb_jianshu
-> (jianshu_title,jianshu_author,submission_date)
-> VALUES
-> ("MySQL插入数据","防盗门i",NOW());
Query OK, 1 row affected, 1 warning (0.09 sec)
mysql> INSERT INTO mydb_jianshu
-> (jianshu_title,jianshu_author,submission_date)
-> VALUES
-> ("学习网络安全从0到1","防盗门i",NOW());
Query OK, 1 row affected, 1 warning (0.09 sec)
mysql> INSERT INTO mydb_jianshu
-> (jianshu_title,jianshu_author,submission_date)
-> VALUES
-> ("MySQL基础","防盗门i",NOW());
Query OK, 1 row affected, 1 warning (0.08 sec)
注意: 使用箭头标记 ->
不是 SQL 语句的一部分,它仅仅表示一个新行,如果一条SQL语句太长,我们可以通过回车键来创建一个新行来编写 SQL 语句,SQL 语句的命令结束符为分号 ;
。
在以上实例中,我们并没有提供 jianshu_id 的数据,因为该字段我们在创建表的时候已经设置它为 AUTO_INCREMENT(自动增加) 属性。 所以,该字段会自动递增而不需要我们去设置。实例中 NOW() 是一个 MySQL 函数,该函数返回日期和时间。
接下来我们可以通过以下语句查看数据表数据:
读取数据表:select * from mydb_jianshu;
输出结果:
mysql> select * from mydb_jianshu;
+------------+----------------------------+----------------+-----------------+
| jianshu_id | jianshu_title | jianshu_author | submission_date |
+------------+----------------------------+----------------+-----------------+
| 1 | MySQL插入数据 | 防盗门i | 2018-02-09 |
| 2 | 学习网络安全从0到1 | 防盗门i | 2018-02-09 |
| 3 | MySQL基础 | 防盗门i | 2018-02-09 |
+------------+----------------------------+----------------+-----------------+
3 rows in set (0.06 sec)
mysql>
使用PHP脚本插入数据
以下实例使用了PHP脚本来插入数据:
实例
以下实例中程序接收用户输入的三个字段数据,并插入数据表中:
<?php
$dbname = 'mydb';
$servername = 'localhost';
$username = 'root';
$password = '';
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
// 设置 PDO 错误模式为异常
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$jianshu_title="零基础学习网络安全";
$jianshu_author="Fangdm.";
$submission_date="2018-02-09";
$sql = "INSERT INTO mydb_jianshu" .
"(jianshu_title,jianshu_author,submission_date)" .
"VALUES" .
"('$jianshu_title','$jianshu_author','$submission_date');";
//使用 exec() ,因为没有结果返回
$conn->exec($sql);
echo "数据添加成功<br>";
} catch (PDOException $e) {
echo $sql . "<br>" . $e->getMessage();
}
$conn = null;
?>
接下来我们可以通过以下语句查看数据表数据:
读取数据表:select * from mydb_jianshu;
mysql> select * from mydb_jianshu;
+------------+-----------------------------+----------------+-----------------+
| jianshu_id | jianshu_title | jianshu_author | submission_date |
+------------+-----------------------------+----------------+-----------------+
| 1 | MySQL插入数据 | 防盗门i | 2018-02-09 |
| 2 | 学习网络安全从0到1 | 防盗门i | 2018-02-09 |
| 3 | MySQL基础 | 防盗门i | 2018-02-09 |
| 4 | 零基础学习网络安全 | Fangdm. | 2018-02-09 |
+------------+-----------------------------+----------------+-----------------+
4 rows in set (0.00 sec)
提示:INSERT 也可以插入多条数据。
INSERT INTO table_name (field1, field2,...fieldN) VALUES (valueA1,valueA2,...valueAN),(valueB1,valueB2,...valueBN),(valueC1,valueC2,...valueCN)......;
一起学习一起进步,写的不好见谅。