数据库操作:进行增删改查的sql语句
数据库中某一个表为例:
实例
添加一条数据:
INSERT INTO `category` (`name`,`alias`) VALUES('dy','meiguodabian');
运行实例 »
点击 "运行实例" 按钮查看在线实例
修改一条数据:
实例
UPDATE `category` SET `alias`='kangrishenju' WHERE `cate_id`=4;
运行实例 »
点击 "运行实例" 按钮查看在线实例
实例
查询一条数据:
SELECT `cate_id`,`name`,`alias` from `category`;
运行实例 »
点击 "运行实例" 按钮查看在线实例
删除一条记录:
实例
DELETE FROM `category` WHERE `cate_id`=4;
运行实例 »
点击 "运行实例" 按钮查看在线实
PDO常用的增删改查操作
添加操作
实例
/**
* Created by PhpStorm.
* User: 86152
* Date: 2019/7/26
* Time: 16:22
*/
//新增记录
//1.连接数据库
require __DIR__ . '/inc/connect.php';
//2.创建SQL语句的模板 sql语句中变量 :变量名->可命名变量(重点)
$sql='INSERT INTO `category` SET `name`=:name,`alias`=:alias';
//3.创建sql语句的对象 预处理对象用的是pdo中的prepare(); $stmt的对象类型是PDOStatement
$stmt=$pdo->prepare($sql);
//4.将变量名绑定到sql语句模板的命名占位符上
$name='dy';
$alias= '抗日神剧';
//绑定对象调用预处理对象中的bindParam(name,$name,变量的类型)
$stmt->bindParam(':name',$name,PDO::PARAM_STR);
$stmt->bindParam(':alias',$alias,PDO::PARAM_STR);
//5.执行sql语句 执行成功后,返回的是一个boolean值,进行if判断,初始化一个变量,这个变量是$stmt->rowCount()
if($stmt->execute()){
// 返回新增的数量 只要它大于0,执行成功
if($stmt ->rowCount()>0){
echo '成功的添加' . $stmt->rowCount() . '条记录数', '主键:' . $pdo->lastInsertId();
}
}else{
die('
' . print_r($stmt->errorInfo(),true));
}
//6.关闭连接
$pdo= null;
简写版:
实例
/**
* Created by PhpStorm.
* User: 86152
* Date: 2019/7/27
* Time: 15:18
*/
//1.连接数据库
require __DIR__ . '/inc/connect.php';
//3.创建sql语句的预处理对象
$stmt = $pdo->prepare('INSERT INTO `category` SET `name`=:name, `alias`=:alias');
//5.执行sql语句
$stmt->execute(['name'=>'dy','alias' => '抗日神剧']);
if($stmt->rowCount()){
echo '成功添加' . $stmt->rowCount() . '条记录数' . '主键:' . $pdo->lastInsertId();
}
//6.关闭连接
$pdo = null;
点击 "运行实例" 按钮查看在线实例
修改操作:
实例
/**
* Created by PhpStorm.
* User: 86152
* Date: 2019/7/27
* Time: 15:36
*/
//1.连接数据库
require __DIR__ . '/inc/connect.php';
//2.创建sql语句的预处理对象
$stmt= $pdo-> prepare('UPDATE `category` SET `name`=:name, `alias`=:alias WHERE `cate_id`=:cate_id');
//3.执行sql语句
$stmt ->execute(['name'=>'mu', 'alias'=>'音乐频道', 'cate_id' =>13]);
echo '成功更新' . $stmt->rowCount() .'条记录' . '主键:' . $pdo->lastInsertId();
//4.关闭连接
$pdo= null;
运行实例 »
点击 "运行实例" 按钮查看在线实例
删除操作:
实例
/**
* Created by PhpStorm.
* User: 86152
* Date: 2019/7/27
* Time: 15:52
*/
//1.连接数据库
require __DIR__ . '/inc/connect.php';
//2.创建sql语句的预处理对象
$stmt = $pdo->prepare('DELETE FROM `category` WHERE `cate_id` = :cate_id');
//3. 执sql
$stmt ->execute(['cate_id' => 13]);
echo '删除成功' . $stmt->rowCount() . '条记录' . '主键:' . $pdo->lastInsertId();
//4.关闭连接
$pdo = null;
运行实例 »
点击 "运行实例" 按钮查看在线实例
查询操作:
实例
/**
* Created by PhpStorm.
* User: 86152
* Date: 2019/7/27
* Time: 15:59
*/
//逐条输出
//1.连接数据库
require __DIR__ . '/inc/connect.php';
//2.创建sql预处理对象
$stmt =$pdo->prepare(
'SELECT * FROM `movies` WHERE `cate_id` = :cate_id'
);
//3.执行sql
$stmt->execute(['cate_id'=> 2]);//获取到结果集
//处理结果集 方法一:进行while遍历 fetch()
//echo '
' . print_r($stmt->fetch(),true);
//echo '
' . print_r($stmt->fetch(),true);
//FETCH_ASSOC:获取模式,一旦加上这个,就没有索引部分,只有关联部分
//while($movie=$stmt->fetch(PDO::FETCH_ASSOC)){
// echo '
' . print_r($movie,true);
//}
//echo '
' . print_r($stmt->fetchAll(PDO::FETCH_ASSOC),true);
//方法二:fetchALL输出结果为一个二维数组,用foreach遍历 数据很少用
//$movie= $stmt->fetchAll(PDO::FETCH_ASSOC);
//foreach ($movie as $movie){
// echo '
' . print_r($movie,true);
//}
//方法三:把表中的某一列数据放到一个变量里面,每次循环的时候不用看表,
//直接遍历变量,把这个变量与当前结果集的某一个列进行绑定
$stmt->bindColumn('name',$name);
$stmt->bindColumn('detail',$detail);
while($stmt->fetch(PDO::FETCH_ASSOC)){
echo '简介:' . $name,' . =====>别名:' . $detail . '
';
}
//4.关闭连接
$pdo = null;
运行实例 »
点击 "运行实例" 按钮查看在线实例