跟着百度学PHP[14]-初识PDO数据库抽象层
目录:
00x1 php中的pdo是什么?
00x2 pdo创建一个PDO对象
00x1 php中的pdo是什么?
就是操作数据库的方法,
pdo就是把操作数据库的函数封装成一个pdo类,其间做了安全验证而已。
果要开启某个PDO直接在PHP.ini当中激活即可。(直接将分号去除即可)
详细的开启服务可以在phpinfo下面查询即可。

00x2 创建一个PDO对象?
mysql连接数据库的方式是
<?php
mysql_connect("localhost","root","");
mysql_select_db('test');
?>
既然说了PDO就是将数据库封装成类。(Ps:PDO现在大多数主流的数据库)
PDO有四个参数:分别是$dsn、$username、$password、优化驱动的参数、
什么是dsn呢?其实DSN就是Data Source Name的简称,即数据源名。
data其实就是主机、数据库、数据库的驱动。
那么我们先用PDO来连接一下oracle数据库:
在此之前我们必须要安装oralce的驱动,我使用的是wampserver,自动就有装了主流数据库的一些驱动。
pdo的所在目录是:php\php5.3.10\ext
下图就是对应数据库的PDO驱动:

<?php
try {
$pdo = new PDO("mysql:host=localhost;port=3306;dbname=admin","root","");//如果PDO出现异常那么就执行catch中的代码。否则不执行catch进而继续向下执行。
} catch (Exception $e) {
echo "数据库连接失败!".$e->getmessage();
exit;
}
echo "创建PDO对象成功!";
?>
图中所指的是驱动:
必须要安装才可以进行使用。
上面一个案例当中并没有使用到第四个参数,因为是可选的,PDO为我们提供优化驱动的第四个参数是一个数组。所以我们可以同时优化多个。
<?php
try {
$pdo = new pdo("mysql:host=localhost;port=3306;dbname=test","root","",array(PDO::ATTR_AUTOCOMMIT=>false));
} catch (PDOException $e) { }
echo $pdo->getattribute(PDO::ATTR_AUTOCOMMIT); ?>
THE END
跟着百度学PHP[14]-初识PDO数据库抽象层的更多相关文章
- 初识PDO数据库抽象层
目录: 00x1 php中的pdo是什么? 00x2 pdo创建一个PDO对象 00x1 php中的pdo是什么? 就是操作数据库的方法,pdo就是把操作数据库的函数封装成一个pdo类,其间做了安全验 ...
- 跟着百度学PHP[14]-PDO之Mysql的事务处理2
前面所将仅仅是在纯mysql下的讲解,这节就是要将其搬到PDO台面上来了. 将自动提交关闭. SetAttribute下有一个PDO::ATTR_AUTOCOMMIT 将其设置为0即可关闭,如:$pd ...
- 跟着百度学PHP[14]-PDO的错误处理模式&PDO执行SQL
我们在使用PDO去执行sql语句的时候并不会报错.如下案例所示: <?php try { //$pdo = new pdo("mysql:host=主机;port=端口;dbname= ...
- 跟着百度学PHP[14]-PDO的预处理语句2
在$sql = $pdo -> prepare("insert into users(gold,user,password) values(?,?,?)"):条语句我们不仅仅 ...
- 跟着百度学PHP[14]-PDO的预处理语句1
预处理语句有以下两个特点: 1.效率高 2.安全性好 为什么说预处理语句效率高呢? 预处理语句就好比一个模板,比如下面的一串插入语句: insert into admin(id,username,pa ...
- 跟着百度学PHP[14]-PDO之Mysql的事务处理1
事务处理:在实际案例当中干一件事的mysql语句(好比转账,小一同学转账100,小二同学收账,在mysql当中小一就要减去转账的钱,小二就要增加100快)倘若该语句执行过程中有任何一条的sql语句出错 ...
- 跟着百度学PHP[14]-COOKIE的应用/网站登陆案例完整案例
先在数据库当中创建以下数据: mysql> create table user( -> id int not null auto_increment, ) not null default ...
- 跟着百度学PHP[14]-PDO-优化驱动
使用方法设置预定义变量 PDO的方法/属性 PDO::beginTransaction — Initiates a transaction PDO::commit — Commits a transa ...
- 跟着百度学PHP[17]-复习PDO的几个关键词
主要就是复习一下几个关键词.发现太久没有写又忘了.惭愧. final self static const
随机推荐
- Python学习1:使用Aptana构建Python开发环境
使用Aptana构建Python开发环境 下载Aptana: http://www.aptana.com/products/studio3/download http://www.newasp.net ...
- 初入android驱动开发之字符设备(一)
大学毕业,初入公司,招进去的是android驱动开发工程师的岗位,那时候刚进去,首先学到的就是如何搭建kernel.android的编译环境,然后就是了解如何刷设备以及一些最基本的工具.如adb.fa ...
- 取url中的参数值
string url = "https://i.cnblogs.com/EditPosts.aspx?opt=1";//key不区分大小string key="opt&q ...
- TensorFlow进阶(三)---变量的创建、初始化
变量的的创建.初始化.保存和加载 其实变量的作用在语言中相当,都有存储一些临时值的作用或者长久存储.在Tensorflow中当训练模型时,用变量来存储和更新参数.变量包含张量(Tensor)存放于内存 ...
- 安装64位office时提示已安装32位的office
运行 regedit,进入到HKEY_CLASSES_ROOT\Installer\Products下,删除0000510开头的项,没有00005我把00002....的删了也可以
- Python 爬取外文期刊论文信息(机械 仪表工业)
NSTL国家科技图书文献中心 2017 机械 仪表工业 所有期刊论文信息 代码比较随意,不要介意 第一步,爬取所有期刊链接 #coding=utf-8 import time from se ...
- 【转】-ECshop数据库表结构
-- 表的结构 `ecs_account_log`CREATE TABLE IF NOT EXISTS `ecs_account_log` (`log_id` mediumint(8) unsigne ...
- 集合系列之fail-fast 与fail-safe 区别
一:快速失败(fail—fast) 在用迭代器遍历一个集合对象时,如果遍历过程中对集合对象的内容进行了修改(增加.删除.修改),则会抛出Concurrent Modification Exceptio ...
- 2014面试总结--java、数据 方向
这里不讲详细的题目.仅仅是总结一下体会. 好一点的公司考察的都比較全面,主要看你对原理性的理解.还有你的思维逻辑:就眼下来讲,对深度的考察大于广度.而我个人如今这个阶段也比較专注于深度. 列一些常常问 ...
- C++11 可变参数模板构造string列表
#include <iostream> #include <cstdint> #include <list> #include <string> tem ...