2016/4/1 PDO:: 数据访问抽象层 ? :
①PDO方式连接 数据库
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<?php
//定义数据源
$dsn="mysql:dbname=test2;host=localhost";
//$dsn="sqlsrv:dbname";
//造pdo对象
$pdo=new PDO($dsn,"root","123"); //写SQL语句
$sql="select * from Info"; //准备执行语句
$st=$pdo->prepare($sql); //执行预处理语句
$st->execute();// 条件判断 返回true 或 false
if ($st->execute()) {
print_r($st->fetch()); //一次调用一条
}
else{
echo "执行失败!";
}
//从结果集中取所有数据,返回二维数组
//print_r($st->fetchAll(PDO::FETCH_NUM));
//从结果集中取一条数据中的某一列,返回字符串
//var_dump($st->fetchColumn(1));
//从结果集中取一条数据,返回一个实体类的对象
//var_dump($st->fetchObject());
?>
</body>
</html>
图:
② ????? prepare($sql) bindParam(1,$XX) $XX="ss" exectue() 方式
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<?php
//造PDO对象
$pdo=new PDO("mysql:dbname=test2;host=localhost","root","123"); //写SQl语句
$sql="insert into Info values(?,?,?,?,?)"; //准备SQL语句
$st=$pdo->prepare($sql);
//给SQL语句分配变量
$st->bindParam(1,$code);
$st->bindParam(2,$name);
$st->bindParam(3,$sex);
$st->bindParam(4,$nation);
$st->bindParam(5,$birthday);
//给变量赋值
$code="p120";
$name="回家";
$sex=true;
$nation="n002";
$birthday="1988-9-6";
//执行SQL语句
$st->execute();
?>
</body>
</html>
????? prepare($sql) exectue(array("ss")) 方式
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<?php
//造PDO对象
$pdo=new PDO("mysql:dbname=test2;host=localhost","root","123"); //写SQl语句
$sql="insert into Info values(?,?,?,?,?)"; //准备SQL语句
$st=$pdo->prepare($sql);
$st->execute(array('p0030','克隆',true,'n001','1989-2-3'));//把分配变量和赋值干掉,只用这句。 ?>
</body>
</html>
③::::: prepare($sql) bindParam("",$XX,PDO::PARAM_STR); $XX="" exectue() 方式
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<?php
//造PDO对象
$pdo=new PDO("mysql:dbname=test2;host=localhost","root","123"); //写SQl语句
$sql="insert into info values(:c,:n,:s,:na,:b)"; //准备SQL语句
$st=$pdo->prepare($sql); //绑定参数
$st->bindParam("c",$code,PDO::PARAM_STR);
$st->bindParam("n",$name,PDO::PARAM_STR);
$st->bindParam("s",$sex,PDO::PARAM_STR);
$st->bindParam("na",$nation,PDO::PARAM_STR);
$st->bindParam("b",$birthday,PDO::PARAM_STR); //参数赋值
$code="p181";
$name="纳";
$sex=true;
$nation="n002";
$birthday="1988-2-3"; //执行
$st->execute();
?>
</body>
</html>
::::: prepare($sql) execute(); 方式
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<?php
//造PDO对象
$pdo=new PDO("mysql:dbname=test2;host=localhost","root","123"); //写SQl语句
$sql="insert into info values(:c,:n,:s,:na,:b)"; //准备SQL语句
$st=$pdo->prepare($sql);
$st->execute(array('c'=>'p190','n'=>'水果','s'=>true,'na'=>'n002','b'=>'1990-2-3'));
?>
</body>
</html>
图:
2016/4/1 PDO:: 数据访问抽象层 ? :的更多相关文章
- PDO数据访问抽象层
PDO数据访问抽象层: 我们使用的mysqli是针对mysql这个数据库扩展的一个类,如果要用到别的数据库的话就可以用PDO来做 1.操作数据库 先来代码 <!--PDO--> <! ...
- PDO(数据访问抽象层)、pdo事务功能和预处理功能---2017-05-05
之前所学的数据访问都是用mysqli做成类来访问的,但是mysqli这个类只是针对mysql这个数据库的:那么如果访问其他类型的数据库呢? 那么这就用到了PDO(数据访问抽象层). 一.关于PDO基本 ...
- PHP中关于PDO数据访问抽象层的功能操作
PDO:数据访问抽象层 具有三大特点: 1.可以访问其它数据库 所有数据库都可以 2.具有事务功能 3.带有预处理语句功能(防止SQL注入攻击) 实例操作代码如下: <?php //1.造PD ...
- PDO数据访问抽象层(上)
PDO比MySQLi功能强大 PDO可以访问MySQL及其它数据库 一.造对象 <?php $dsn = "mysql:dbname = crud;host = localhost&q ...
- PDO 数据访问抽象层
1.操作其它数据库 (1)造对象 $dsn = "mysql:dbname=test3;host=localhost"; //数据源:两个参数:数据库驱动,链接数据库 $pdo = ...
- php 之 PDO数据访问抽象层(0513)
PDO(PHP Data Objects)是一种在PHP里连接数据库的使用接口. PDO与mysqli曾经被建议用来取代原本PHP在用的mysql相关函数, 基于数据库使用的安全性,因为后者欠缺对于S ...
- 5月13 PDO数据访问抽象层
方法1:较简单的 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://ww ...
- PDO数据访问抽象层(下)
PDO两大功能 一.事务功能 PDO的事务功能主要控制好几条sql语句同时成功或者同时失败(当其中一条SQL语句有错误时,同时好几条一起失败),失败时可以回滚操作 1.造对象 <?php $ds ...
- php PDO:数据访问抽象层
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- PDO:数据访问抽象层
<?php //PDO:数据访问抽象层 //带有事务功能: //dsn:数据源 $dsn="mysql:host=localhost;dbname=aaas"; //造pdo ...
随机推荐
- CSS--基础块级元素与内联元素
在CSS中,html中的标签元素大体被分为三种不同的类型:块状元素.内联元素(又叫行内元素)和内联块状元素.在HTML和XHTML中,块级元素不能继承自行内元素(即不能嵌套在行内元素),<p&g ...
- perl学习之:package and module
perl的包(package)和模块(PM) ==================================包package=========================== pac ...
- 算法导论 第一章and第二章(python)
算法导论 第一章 算法 输入--(算法)-->输出 解决的问题 识别DNA(排序,最长公共子序列,) # 确定一部分用法 互联网快速访问索引 电子商务(数值算 ...
- Python 双向队列Deque、单向队列Queue 模块使用详解
Python 双向队列Deque 模块使用详解 创建双向队列Deque序列 双向队列Deque提供了类似list的操作方法: #!/usr/bin/python3 import collections ...
- datatable生成easyui的json格式汇总( 转)
转自 http://www.cnblogs.com/WikStone/archive/2012/07/02/2573137.html 目前项目没有使用第三方的json转换库,都是根据json格式进行字 ...
- Ubuntu启用IPv6上google的方法
Pv6就是我们通常所说的互联网协议,是TCP/IP的核心协议,那么在Linux下如何开启IPv6呢?下面以Ubuntu为例,给大家介绍下Ubuntu启用IPv6的方法. 方法: $sudo apt-g ...
- Java SSH框架系列:用户登录模块的设计与实现思路
1.简介用户登录模块,指的是根据用户输入的用户名和密码,对用户的身份进行验证等.如果用户没有登录,用户就无法访问其他的一些jsp页面,甚至是action都不能访问.二.简单设计及实现本程序是基于Jav ...
- 可以学习相关框架【转:https://testerhome.com/topics/6283】
https://testerhome.com/topics/6283 单元测试方面(Java): Junit:本来想用我熟悉的testng,但是开发的同学说测试springmvc只能用Junit.所以 ...
- Java多线程干货系列—(四)volatile关键字
原文地址:http://tengj.top/2016/05/06/threadvolatile4/ <h1 id="前言"><a href="#前言&q ...
- msp430项目编程06
msp430中项目---设计扫描键盘 1.扫描键盘工作原理 2.电路原理说明 3.代码(显示部分) 4.代码(键盘驱动) 5.项目总结 msp430项目编程 msp430入门学习