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

//定义数据源
$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或提供数据库本身缺失的功能。

原文地址:https://www.cnblogs.com/Yue0327/p/5361565.html