php配合mysql程序_PHP操作MySQL-其他「程序员培养之路第四十九天」

解析结果集

8449dad5bab1be2ed28099b65af13af7.png

PDO(PHP Data Object)

PDO是PHP数据对象的英文缩写,英文全称为PHP Data Object,是又MySQL官方封装的、基于面向对象编程思想的、使用C语言开发的数据库抽象层。

配置PDO

Windows下启动PDO需要在“php.ini”文件中进行配置,添加扩展:

extension=php_pdo.dll

在最新版PHP中,PDO已经默认开启,只需要启动其他数据库扩展即可。配置好这些后重启Apache服务。执行phpinfo()函数,看到PDO配置项,说明开启成功。

7c4d58494e7c3a9bd16f7ce7b3341f5b.pngMySQL

访问数据库

与mysqli扩展类似,PDO扩展也是实例一个PDO对象,然后可以调用相关方法和属性来执行数据库的操作。

连接服务器

使用PDO与服务器建立连接,需要先使用构造方法来创建PDO实例,PDO的构造方法如下:

_construct(stringdata_source_name [,string user[,string pwd[,array driver_options]]])

datasourcename : 数据源,该参数包括了数据库名,主机名。MySQL数据库的DSN为:“mysql:host=localhost;dbname=account_db; port=3306”

user:数据库服务器用户名

pwd:为数据库服务器密码

数据库连接成功后,将返回一个PDO的实例,连接失败将会抛出一个PDOException异常,通常会使用try/catch语句进行处理。

关闭数据库

要想关闭连接,需要销毁对象以确保所有到它的引用都被删除,可以给变量赋一个NULL。

执行SQL语句

PDO提供了三种执行SQL语句的方法,分别是exec(),query(),预处理语句。

exec()

exec()方法可以执行一条语句,并返回受影响的行数,它的语法格式如下:

int PDO::exec(String sql)

exec()方法通常用于insert into,delete,update等语句。

<?phpecho "

";$dbms = "mysql";$server = "localhost";$username = "root";$password = "123456";$dsn = "$dbms:host=$server";try {$pdo = new PDO ( $dsn, $username, $password );echo "PDO连接MySQL数据库服务器成功";print ($pdo->exec ( "create database account_pdo_db" )) ;print ($pdo->exec ( "use account_pdo_db" )) ;print ($pdo->exec ( "set names utf8" )) ;print ($pdo->exec ( "create table account(id int auto_increment primary key, username varchar(50) not null, password varchar(50) not null, email  varchar(50) not null)" )) ;print ($pdo->exec ( "insert into account(username, password, email) values ('Jack', '123456', 'jack@example.com')" )) ;print ($pdo->exec ( "insert into account(username, password, email) values ('Lucy', '123456', 'lucy@example.com')" )) ;$pdo = null;} catch ( PDOException $e ) {echo "PDO连接MySQL数据库服务器失败";die ();}?>

query()

query()方法不同于exec(),通常用于select语句中,它的返回值是PDOStatement的实例,是POD里的结果集。它的语法如下:

PDOStatement PDO::query(String sql)

<?phpecho "

";$dbms = "mysql";$server = "localhost";$username = "root";$password = "123456";$dbname = "account_pdo_db";$dsn = "$dbms:host=$server;dbname=$dbname";try {$pdo = new PDO ( $dsn, $username, $password );echo "

PDO连接MySQL数据库服务器成功

";$result = $pdo->query ( "select * from account" );foreach ( $result as $row ) {var_dump ( $row );}$pdo = null;} catch ( PDOException $e ) {echo "PDO连接MySQL数据库服务器失败";die ();}?>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值