PHP PDO增删改查示例
<?php
$dbms = 'mysql'; //数据库类型
$host = 'localhost'; //数据库主机名
$dbname = 'test'; //使用的数据库
$user = 'root'; //数据库连接用户名
$pass = 'root'; //对应的密码
$dsn = "$dbms:host=$host;dbname=$dbname;charset=utf8";
//连接MySQL
try {
$db = new PDO($dsn, $user, $pass, array(PDO::ATTR_PERSISTENT => true)); //初始化一个PDO对象
echo 'Connected successfully<br/>';
// 设置 PDO 错误模式,用于抛出异常
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
die ("Error!: " . $e->getMessage() . "<br/>");
}
//如果有任何连接错误,将抛出一个 PDOException 异常对象。
//创建数据表
$sql = "CREATE TABLE user(
id INT(11) NOT NULL AUTO_INCREMENT COMMENT '主键',
name CHAR(32) NOT NULL DEFAULT '' COMMENT '用户名',
password CHAR(32) NOT NULL DEFAULT '' COMMENT '密码',
email CHAR(32) NOT NULL DEFAULT '' COMMENT '邮箱',
PRIMARY KEY (id)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ";
try {
$res = $db->query($sql); //创建数据表 user 实例
echo 'Table user created successfully<br>';
} catch (PDOException $e) {
die ("Error!: " . $e->getMessage() . "<br/>");
}
//新增数据记录
$sql = "INSERT INTO user (name,password,email) VALUES ('张三','123456','xxxxxxx@foxmail.com')";
try {
$res = $db->exec($sql); //插入数据,返回受影响的行数
echo 'Record inserted successfully<br>';
} catch (PDOException $e) {
die ("Error!: " . $e->getMessage() . "<br/>");
}
//更新数据记录
$sql = "UPDATE user SET name='李四' WHERE id>4";
try {
$res = $db->exec($sql); //更新数据,返回受影响的行数
echo 'Record updated successfully<br>';
} catch (PDOException $e) {
die ("Error!: " . $e->getMessage() . "<br/>");
}
//查询数据记录
$sql = "select * from user";
try {
$res = $db->query($sql)->fetchAll(PDO::FETCH_ASSOC); //查询数据,返回索引数组
var_dump($res);
} catch (PDOException $e) {
die ("Error!: " . $e->getMessage() . "<br/>");
}
//删除数据记录
$sql = "DELETE FROM user WHERE id>4";
try {
$res = $db->exec($sql); //删除数据,返回受影响的行数
echo 'Record deleted successfully<br>';
} catch (PDOException $e) {
die ("Error!: " . $e->getMessage() . "<br/>");
}
?>