1) exec() 方法
当执行 INSERT、UPDATE 和 DELETE 等不需要返回结果集的 SQL 语句时,可以使用 PDO 对象中的 exec() 方法。该方法成功执行后,将返回受影响的行数,语法格式如下:
PDO::exec(string $sql)
其中 $sql 为要执行的 SQL 语句。
注意:exec() 方法不会从 SELECT 查询语句中获取相应的结果。
【示例】使用 exec() 方法向数据库中添加一条数据。
<?php
$dsn = 'mysql:host=127.0.0.1;dbname=test';
$user = 'root';
$pwd = 'root';
try{
$pdo = new PDO($dsn,$user,$pwd);
$sql = "insert into user(name,age,sex) values('小刚','14','男')";
$res = $pdo -> exec($sql);
if($res) echo '成功添加 '.$res.' 条数据!';
}catch(PDOException $e){
echo '数据库连接失败:'.$e -> getMessage();
}
?>
运行结果如下:
成功添加 1 条数据!
2) query() 方法
当执行需要返回结果集的 SELECT 查询语句时,可以使用 PDO 对象中的 query() 方法。如果该方法执行成功,则会返回一个 PDOStatement 对象。如果使用了query() 方法,并想了解获取的数据行总数,可以使用 PDOStatement 对象中的 rowCount() 方法获取。