您现在的位置是:首页 > 网站制作 > PHPPHP
PHP MySQL 插入数据
胜于蓝2013-12-30【PHP】人已围观
简介使用 MySQLi 和 PDO 向 MySQL 插入数据在创建完数据库和表后,我们可以向表中添加数据。以下为一些语法规则: PHP 中 SQL 查询语句必须使用引号 在 SQL 查询语句中的字符串值必
使用 MySQLi 和 PDO 向 MySQL 插入数据
在创建完数据库和表后,我们可以向表中添加数据。
以下为一些语法规则:
- PHP 中 SQL 查询语句必须使用引号
- 在 SQL 查询语句中的字符串值必须加引号
- 数值的值不需要引号
- NULL 值不需要引号
INSERT INTO 语句通常用于向 MySQL 表添加新的记录:
INSERT INTO table_name (column1, column2, column3,...) VALUES (value1, value2, value3,...)
学习更多关于 SQL 知识,请查看我们的 SQL 教程。
在前面的几个章节中我们已经创建了表 "MyGuests",表字段有: "id", "firstname", "lastname", "email" 和 "reg_date"。 现在,让我们开始向表填充数据。
![]() |
注意: 如果列设置 AUTO_INCREMENT (如 "id" 列) 或 TIMESTAMP (如 "reg_date" 列),,我们就不需要在 SQL 查询语句中指定值; MySQL 会自动为该列添加值。 |
---|
以下实例向 "MyGuests" 表添加了新的记录:
实例 (MySQLi - 面向对象)
<?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; // 创建连接 $conn = new mysqli($servername, $username, $password, $dbname); // 检测连接 if ($conn->connect_error) { die("连接失败: " . $conn->connect_error); } $sql = "INSERT INTO MyGuests (firstname, lastname, email) VALUES ('John', 'Doe', 'john@example.com')"; if ($conn->query($sql) === TRUE) { echo "新记录插入成功"; } else { echo "Error: " . $sql . "<br>" . $conn->error; } $conn->close(); ?>实例 (MySQLi - 面向过程)
<?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; // 创建连接 $conn = mysqli_connect($servername, $username, $password, $dbname); // 检测连接 if (!$conn) { die("Connection failed: " . mysqli_connect_error()); } $sql = "INSERT INTO MyGuests (firstname, lastname, email) VALUES ('John', 'Doe', 'john@example.com')"; if (mysqli_query($conn, $sql)) { echo "新记录插入成功"; } else { echo "Error: " . $sql . "<br>" . mysqli_error($conn); } mysqli_close($conn); ?>实例 (PDO)
<?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDBPDO"; try { $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password); // 设置 PDO 错误模式,用于抛出异常 $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $sql = "INSERT INTO MyGuests (firstname, lastname, email) VALUES ('John', 'Doe', 'john@example.com')"; // 使用 exec() ,没有结果返回 $conn->exec($sql); echo "新记录插入成功"; } catch(PDOException $e) { echo $sql . "<br>" . $e->getMessage(); } $conn = null; ?>在学习 PDO 创建数据表的时候 , 我遇到这个报错。
SQLSTATE[3D000]: Invalid catalog name: 1046 No database selected
最后发现问题在这里:
$conn = new PDO("mysql:host = $servername;dbname = $dbname",$username,$password);
因为我写代码的习惯是" = "两边都加上空格 , 但是在这里 dbname = $dbname 的等号两边却不可以存在空格
所以正确的写法应该是 dbname=$dbname:
$conn = new PDO("mysql:host = $servername;dbname=$dbname",$username,$password);
这样就没有报错了!
Tags:
很赞哦! ()
上一篇:PHP 创建 MySQL 表
下一篇:PHP MySQL 插入多条数据
相关文章
随机图文
PHP MySQL 创建数据库
数据库存有一个或多个表。你需要 CREATE 权限来创建或删除 MySQL 数据库。使用 MySQLi 和 PDO 创建 MySQL 数据库CREATE DATABASE 语句用于在 MySQL 中创建数据库。在下面的PHP $_GET 变量
在 PHP 中,预定义的 $_GET 变量用于收集来自 method="get" 的表单中的值。$_GET 变量预定义的 $_GET 变量用于收集来自 method="get" 的表单中的值。从带有 GET 方法的表单发PHP 连接 MySQL
PHP 5 及以上版本建议使用以下方式连接 MySQL : MySQLi extension ("i" 意为 improved) PDO (PHP Data Objects)在 PHP 早期版本中我们使用 MySQL 扩展。但该扩展在 2012 年PHP 过滤器
PHP 过滤器用于验证和过滤来自非安全来源的数据,比如用户的输入。什么是 PHP 过滤器?PHP 过滤器用于验证和过滤来自非安全来源的数据。测试、验证和过滤用户输入或自定义数据