PHP pdo(配置+基本使用)

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();//错误信息
}

在这里插入图片描述

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

贵哥的编程之路(热爱分享)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值