pdo:统一API能操作各种数据库。 开启pdo拓展。在php.ini文件里面.
重启即可.
第一种连接pdo的方式:
<?php
try
{
$dsn="mysql:host=localhost;dbname=a";
$username="root";
$passwd="";
$pdo=new PDO($dsn,$username,$passwd);//数据源:代表连接那种数据库,数据库是什么。数据库管理工具的账号+密码
var_dump($pdo);
}catch(PDOException $e)
{
echo $e->getMessage();//错误信息
}
第二种连接mysql的方式:url方式
<?php
try
{
$dsn="uri:file://F:/6/htdocs/1.txt";
$username="root";
$passwd="";
$pdo=new PDO($dsn,$username,$passwd);
var_dump($pdo);
}catch(PDOException $e)
{
echo $e->getMessage();
}
第三种形式:配置文件
<?php
try
{
$dsn="a";
$username="root";
$passwd="";
$pdo=new PDO($dsn,$username,$passwd);
var_dump($pdo);
}catch(PDOException $e)
{
echo $e->getMessage();
}
<?php
try
{
$dsn="mysql:host=localhost;dbname=a";
$username="root";
$passwd="";
$pdo=new PDO($dsn,$username,$passwd);//数据源:代表连接那种数据库,数据库是什么。数据库管理工具的账号+密码
$sql=<<<EOF
create table if not exists user(
content varchar(30) not null
);
EOF;
$res=$pdo->exec($sql);//执行一条sql语句,对于select没有作用
var_dump($res);
}catch(PDOException $e)
{
echo $e->getMessage();//错误信息
}
<?php
try
{
$dsn="mysql:host=localhost;dbname=a";
$username="root";
$passwd="";
$pdo=new PDO($dsn,$username,$passwd);//数据源:代表连接那种数据库,数据库是什么。数据库管理工具的账号+密码
$sql=<<<EOF
create table if not exists user(
content varchar(30) not null
);
EOF;
$res=$pdo->exec($sql);
var_dump($res);
$sql="insert into user(content) values('king')";//插入数据
$res=$pdo->exec($sql);
var_dump($res);
}catch(PDOException $e)
{
echo $e->getMessage();//错误信息
}
<?php
try
{
$dsn="mysql:host=localhost;dbname=a";
$username="root";
$passwd="";
$pdo=new PDO($dsn,$username,$passwd);//数据源:代表连接那种数据库,数据库是什么。数据库管理工具的账号+密码
$sql="sqjosjosjo";//实验错误码
$res=$pdo->exec($sql);
if($res===false)
{
echo $pdo->errorCode();//错误码
echo "<br />";
print_r($pdo->errorInfo());//数组( 错误码 错误编码 错误信息)
}
}catch(PDOException $e)
{
echo $e->getMessage();//错误信息
}
<?php
try
{
$dsn="mysql:host=localhost;dbname=a";
$username="root";
$passwd="";
$pdo=new PDO($dsn,$username,$passwd);//数据源:代表连接那种数据库,数据库是什么。数据库管理工具的账号+密码
$sql="select * from user";//实验错误码
$res=$pdo->query($sql);//这个可以执行查询select
var_dump($res);//得到一个object(PDOStatement),遍历才可以输出
foreach($res as $row)
{
print_r($row);
}
}catch(PDOException $e)
{
echo $e->getMessage();//错误信息
}
<?php
try
{
$dsn="mysql:host=localhost;dbname=a";
$username="root";
$passwd="";
$pdo=new PDO($dsn,$username,$passwd);//数据源:代表连接那种数据库,数据库是什么。数据库管理工具的账号+密码
$sql="select * from user";
$sm=$pdo->prepare($sql);//预处理的意思是准备处理
$res=$sm->execute();//通过这个方法处理
$row=$sm->fetch();//得到结果的一条记录,所有记录:fetchAll()
print_r($row);
}catch(PDOException $e)
{
echo $e->getMessage();//错误信息
}
<?php
try
{
$dsn="mysql:host=localhost;dbname=a";
$username="root";
$passwd="";
$pdo=new PDO($dsn,$username,$passwd);//数据源:代表连接那种数据库,数据库是什么。数据库管理工具的账号+密码
$sql="select * from user";
$sm=$pdo->prepare($sql);
$res=$sm->execute();
if($res)//直到没有数据才停止循环
{
while($row=$sm->fetch())
{
print_r($row);
}
}
}catch(PDOException $e)
{
echo $e->getMessage();//错误信息
}
<?php
try
{
$dsn="mysql:host=localhost;dbname=a";
$username="root";
$passwd="";
$pdo=new PDO($dsn,$username,$passwd);//数据源:代表连接那种数据库,数据库是什么。数据库管理工具的账号+密码
echo "自动提交".$pdo->getAttribute(PDO::ATTR_AUTOCOMMIT);//事务默认提交是否开启
}catch(PDOException $e)
{
echo $e->getMessage();//错误信息
}
<?php
try
{
$dsn="mysql:host=localhost;dbname=a";
$username="root";
$passwd="";
$pdo=new PDO($dsn,$username,$passwd);//数据源:代表连接那种数据库,数据库是什么。数据库管理工具的账号+密码
echo "自动提交".$pdo->getAttribute(PDO::ATTR_AUTOCOMMIT);//事务默认提交是否开启
echo "<br />";
echo "pdo默认处理错误模式".$pdo->getATTribute(PDO::ATTR_ERRMODE);
echo "<br />";
"禁用自动提交".$pdo->setAttribute(PDO::ATTR_AUTOCOMMIT,0);
echo "<br />";
echo "自动提交".$pdo->getAttribute(PDO::ATTR_AUTOCOMMIT);//事务默认提交是否开启0
}
catch(PDOException $e)
{
echo $e->getMessage();//错误信息
}