博客列表 >关于占位符以及PDO查询核心代码解释

关于占位符以及PDO查询核心代码解释

夜澜风的博客
夜澜风的博客原创
2019年03月23日 16:28:03741浏览

实例

// 正常情况是6步,PDOStatement类
	// 1,连接
	// 2,sql语句
	// 3,prepare 预处理sql
	// 4,execute 执行mysql语句
	// 5,setFetchMode 改变结果集类型
	// 6,fetchAll 返回结果集

	// 绑定值的话,八步
	// 1,连接
	// 2,sql语句
	// 3,prepare 预处理sql
	// 4,bindValue 把绑定的数据传入
	// 5,bindParam 绑定一个参数到指定的变量名
	// 6,execute 执行mysql语句
	// 7,setFetchMode 改变结果集类型
	// 8,fetchAll 返回结果集
	// 也别说明:
	//  -> 可以访问对象里的数据, 同时也可以进行对象里的赋值 
	//  对象里:
			// 1,有成员
			// 2,有方法
			// 访问方式,都是使用->
	$sql = "SELECT `id`,`name`,`position` FROM `staff` WHERE `id`= 1 ";
	$a = $p->prepare($sql);
	$a->execute();
	$a->setFetchMode(PDO::FETCH_ASSOC);
	$ret = $a->fetchAll();
	print_r($ret);

	// bindValue和bindParam的区别:
	// bindValue的第二个参数可以是实际的值,也可以是变量;bindParam的第二个参数必须是变量,不能是具体的值。
	// bindParam可以先绑定变量,然后再给变量赋值,也就是绑定和赋值没有先后顺序;bindValue必须先声明变量,然后在绑定。
	$sql = "SELECT `id`,`name`,`position` FROM `staff` WHERE `id`= :id ";
	$a = $p->prepare($sql);
	$a->bindValue('id',$id,PDO::PARAM_INT);
	$a->bindParam('id',$id,PDO::PARAM_INT);
	$a->execute();
	$a->setFetchMode(PDO::FETCH_ASSOC);
	$ret = $a->fetchAll();
	print_r($ret);

运行实例 »

点击 "运行实例" 按钮查看在线实例


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议