链接数据库
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题文档</title> </head> <body> <?php //定义数据源 $dsn = "mysql:dbname=testa;host=localhost"; //$dsn = "sqlsrv:dbname=testa;host=localhost"; //造PDO对象 $pdo=new PDO($dsn,"root","1234"); //写SQL语句 $sql="select * from Info"; //准备执行SQL语句 $st=$pdo->prepare($sql); //执行预处理语句 if($st->execute()) { /*while($attr=$st->fetch()) { print_r($attr); echo "<br />"; }*/ //从结果集中取所有数据,返回二维数组 //print_r($st->fetchAll(PAO::FETCH_NUM)); //从结果集中取一条数据中的某一列,返回字符串 //var_dump($st->fetchColumn(1)); //从结果集中取一条数据,返回一个实体类的对象 //var_dump($st->fetchObject()); } else { echo "连接失败!"; } ?> </body> </html>
利用PDO给数据库赋值
方法一:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题文档</title> </head> <body> <?php //造PDO对象 $pdo=new PDO("mysql:dbname=testa;host=localhost","root","1234"); //写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 = "p119"; $name = "回家"; $sex = true; $nation = "n002"; $birthday = "1988-2-3"; //执行SQL语句 $st->execute();*/ //执行SQL语句,简便方法 $st->execute(array('p030','克隆',true,'n001','1988-3-2')); ?> </body> </html>
方法二:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题文档</title> </head> <body> <?php //造PDO对象 $pdo=new PDO("mysql:dbname=testa;host=localhost","root","1234"); //写SQL语句 $sql = "insert into Info values(:c:n:s:na:b)"; //准备SQL语句 $st=$pdo->prepare($sql); /* //绑定参数 $st->bindParam("c",$code,PDO::PARAM_STR); //给变量赋值 $code = "p119"; $name = "回家"; $sex = true; $nation = "n002"; $birthday = "1988-2-3";*/ $st->execute(array('c'=>'p190','n'=>'水果','s'=>'','na'=>'','b'=>'')); ?> </body> </html>
PDO扩展为PHP访问数据库定义了一个轻量级的、一致性的接口,它提供了一个数据访问抽象层,这样,无论使用什么数据库,都可以通过一致的函数执行查询和获取数据。
并不能使用PDO扩展本身执行任何数据库操作,必须使用一个database-specific PDO driver(针对特定数据库的PDO驱动)访问数据库访问器。
PDO并不提供数据库抽象,它并不会重写SQL或提供数据库本身缺失的功能。