PHP使用PDO操作数据库的示例
<pre>
<?php
header("Content-type:text/html;charset=utf8");
//error_reporting(E_ALL^E_NOTICE);
//session_start(); //启用SESSION
date_default_timezone_set('prc');//时间设置为北京时间,默认时间比北京早8小时
$db_host="localhost"; //数据库服务器名称
$db_user="root"; // 连接数据库用户名
$db_pwd=""; // 连接数据库密码
$db_name="qiucoo_20170629"; // 数据库的名字
$db_ms="mysql";
$dsn="$db_ms:host=$db_host;dbname=$db_name";
//PDO使用说明实例
//
//数据库链接
$db = new PDO($dsn,$db_user,$db_pwd,array(PDO::MYSQL_ATTR_INIT_COMMAND => "set names utf8")); //pdo链接
echo "<b style='font-size:20px;background-color:red; color:#fff; padding:5px 20px;'>eg-1:</b><br/>";
//query() 用于查询数据记录并返回查询结果。
$sql = "SELECT c_id,c_name FROM `qy_coupon` limit 0,2";
foreach ($db->query($sql) as $row){
var_dump($row);
}
echo "<b style='font-size:20px;background-color:red; color:#fff; padding:5px 20px;'>eg-2:</b><br/>";
//fetch() 方法用于从结果集中获取一行结果,该方法行为类似 mysql_fetch_array() ,不同的是该方法不仅返回数组,还可返回对象。
$sql = "SELECT c_id,c_name FROM `qy_coupon` limit 0,2";
$result = $db->query($sql);
while($row = $result->fetch()){
var_dump($row);
}
echo "<b style='font-size:20px;background-color:red; color:#fff; padding:5px 20px;'>eg-3:</b><br/>";
//setFetchMode() 如果不在 fetch() 中指定返回的结果类型,也可以单独使用 setFetchMode() 方法设定
//PDO::FETCH_ASSOC 关联索引(字段名)数组形式
//PDO::FETCH_NUM 数字索引数组形式
//PDO::FETCH_BOTH 默认,关联及数字索引数组形式都有
//PDO::FETCH_OBJ 按照对象的形式
//PDO::FETCH_BOUND 通过 bindColumn() 方法将列的值赋到变量上
//PDO::FETCH_CLASS 以类的形式返回结果集,如果指定的类属性不存在,会自动创建
//PDO::FETCH_INTO 将数据合并入一个存在的类中进行返回
//PDO::FETCH_LAZY 结合了 PDO::FETCH_BOTH、PDO::FETCH_OBJ,在它们被调用时创建对象变量
$result = $db->query($sql);
$result->setFetchMode(PDO::FETCH_ASSOC);
while($row = $result->fetch()){
var_dump($row);
}
echo "<b style='font-size:20px;background-color:red; color:#fff; padding:5px 20px;'>eg-4:</b><br/>";
//fetchAll() 方法用于把数据从数据集一次性取出并放入数组中。
$sth = $db->query($sql);
$row = $sth->fetchAll();
var_dump($row);
//只返回(index=1)
$row = $sth->fetchAll(PDO::FETCH_COLUMN, 1);
var_dump($row);
//将 username GROUP 返回(注:由于表中 username 无重复记录,因此本例无意义)
$row = $sth->fetchAll(PDO::FETCH_COLUMN|PDO::FETCH_GROUP, 1);
var_dump($row);
echo "<b style='font-size:20px;background-color:red; color:#fff; padding:5px 20px;'>eg-5:</b><br/>";
//PDO->exec() 方法主要是针对没有结果集合返回的操作,比如 INSERT、UPDATE、DELETE 等操作,它返回的结果是当前操作影响的列数。
$c_name = "优惠券:".time().":插入记录";
$sql = "INSERT INTO qy_coupon (ca_id,c_name)VALUES('109','$c_name')";
$count = $db->exec($sql);
$last_id = $db->lastInsertId('c_id');//返回插入记录的某个字段
echo '<br>写入 ',$count,' 条数据记录!';
echo "<br><br><b style='font-size:20px;background-color:red; color:#fff; padding:5px 20px;'>eg-6:</b><br/>";
//取回结果集中的一个字段
$sql = "select count(*) from qy_coupon";
$result = $db->query($sql);//提交sql
$rowsNumber = $result->fetchColumn();
echo "<br>".$rowsNumber;
echo "<br><br><b style='font-size:20px;background-color:red; color:#fff; padding:5px 20px;'>eg-7:</b><br/>";
//只返回一条记录
$sql="SELECT * FROM `qy_coupon` order by c_id asc";
$result=$db->prepare($sql);// 预处理
var_dump($result);
$result->execute();
$res = $result->fetch(PDO::FETCH_ASSOC);
var_dump($res);
echo "<br><b style='font-size:20px;background-color:red; color:#fff; padding:5px 20px;'>eg-8:</b><br/>";
//执行语名返回影响记录行数
$query = "INSERT INTO `qy_coupon` (ca_id,c_name) value ('109','$c_name')";
$result = $db->prepare($query);
$count = $result->execute();
echo '<br>写入 ',$count,' 条数据记录!';
$db = NULL;
?>
<pre>
PHP使用PDO操作数据库的示例的更多相关文章
- 使用PDO操作数据库的好处
PDO一是PHP数据对象(PHP Data Object)的缩写. 并不能使用PDO扩展本身执行任何数据库操作,必须使用一个database-specific PDO driver(针对特定数据库的P ...
- php pdo操作数据库
POD扩展是在PHP5中加入,该扩展提供PHP内置类 PDO来对数据库进行访问,不同数据库使用相同的方法名,解决数据库连接不统一的问题. PDO的特点: 性能.PDO 从一开始就吸取了现有数据库扩展成 ...
- Linux环境下proc的配置c/c++操作数据库简单示例
在虚拟机上装了oracle11g数据库,原本想利用c/c++学习操作数据库.结果感觉摊上了一个大坑.从安装好oracle数据库到配置好proc的编译选项整整花了二天.但让我意识到自己自己几点薄弱:1. ...
- PHP 笔记——PDO操作数据库
一.简介 PHP 5.1可使用轻量级的统一接口 PDO(PHP Data Object,PHP数据对象)来访问各种常见的数据库.而使用PDO只需要指定不同的 DSN(数据源名称)即可访问不同的数据 ...
- php pdo操作数据库的方法
PDO 安装 你可以通过 PHP 的 phpinfo() 函数来查看是否安装了PDO扩展. 1.在 Unix /linux系统上安装 PDO 在Unix上或Linux上你需要添加以下扩展: exten ...
- THINKPHP5操作数据库代码示例
数据库表结构 #表结构 CREATE TABLE `qrcode_file` ( `id` ) NOT NULL AUTO_INCREMENT, `active` ) ' COMMENT '是否有效' ...
- PDO操作数据库
- 封装PDO操作数据库
<?php class DatabaseHandler { /** * sql语句查询 */ public static function query_data ($dataName,$sql, ...
- PHP数据库扩展 - PDO操作
PDO操作 PDO操作 描述:odp是php对数据库操作统一化的操作 语法:$pdo = new PDO("DB名:host=主机名;dbname=DB名","DB账号& ...
随机推荐
- 异常 - Error / Checked Exception / Runtime Exception
https://www.cnblogs.com/loveis715/p/4596551.html
- c# 类的历遍和历遍操作
string id = Request.Form["id"]; string type = Request.Form["type"]; string info ...
- P1403 [AHOI2005]约数研究 题解
转载luogu某位神犇的题解QAQ 这题重点在于一个公式: f(i)=n/i 至于公式是怎么推出来的,看我解释: 1-n的因子个数,可以看成共含有2因子的数的个数+含有3因子的数的个数……+含有n因子 ...
- leetcode日记 HouseRobber I II
House Robber I You are a professional robber planning to rob houses along a street. Each house has a ...
- JS之代理模式
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- JAVA8集合之List
目录: 一.ArrayList概述 二.ArrayList的实现 1)成员变量 2)构造方法 3)元素添加 4)元素删除 5)元素修改 6)集合容量调整 7)集合转数组 三.总结 一.ArrayLis ...
- Flash Alternativa 3D引擎-基础理论
自由行走的花 网站设计,flash网站设计与动画制作,web,as3 2010-12-31 14:29 [转]Flash Alternativa 3D引擎-基础理论 <本文转载自:http:// ...
- crontab下git命令无效
原因 crontab默认的 path 设置和系统自身的有区别 git 命令放在 /usr/local/bin/ 目录 whereis git 而crontab 却在 /sbin:/bin:/usr ...
- Winscp无法连接linux虚拟机解决
之前需要从主机传文件到虚拟机上,安装了vmware tools,拖拽文件后发现文件总是会损坏一些,查了一下,使用Winscp就不会出现这个问题. 安装好后配置连接:(Centos7) 打开虚拟机,找到 ...
- c++中好用的函数
isdigit()返回是否是数字字符: isalpha()返回是否是字母字符: isupper()返回是否是大写字母: islower()返回是否是小写字母: