PDO:数据访问抽象层
<?php
//PDO:数据访问抽象层
//带有事务功能;
//dsn:数据源
$dsn="mysql:host=localhost;dbname=aaas";
//造pdo对象
$pdo=new PDO($dsn,"root","");//数据源,用户名,密码
//启动事务
$pdo->beginTransaction();
//写SQL语句
$sql="select * form Info"; //执行SQL语句
$a=$pdo->query($sql); //回滚事务
//$pdo->RollBack(); foreach($a as $v)
{
var_dump($v);
} ?> <?php
特点二:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>下午</title>
</head> <body> <?php
//可以防止SQL注入攻击
$dsn="mysql:host=localhost;dbname=aaas";
$pdo=new PDO($dsn,"root","");
$sql="select * from Nation";
//将一条SQL语句放在服务器上准备运行
$stm=$pdo->prepare($sql);
//执行预处理语句,执行成功返回true,失败返回false
if($stm->execute())
{
var_dump($stm->fetch());
}
?> <?php
//可以防止SQL注入攻击
$dsn="mysql:host=localhost;dbname=aaas";
$pdo=new PDO($dsn,"root",""); $sql="insert into Nation values(?,?)";
//将一条SQL语句放在服务器上准备运行
$stm=$pdo->prepare($sql); //绑定参数,数据较少的数据库,太复杂 不推荐
$stm->bindParam(1,$code);
$stm->bindParam(2,$name); //给变量赋值
$code="n030";
$name="壮族"; //执行预处理语句,执行成功返回true,失败返回false
if($stm->execute());
{
var_dump($stm->fetch());
} ?> <?php
//可以防止SQL注入攻击
$dsn="mysql:host=localhost;dbname=aaas";
$pdo=new PDO($dsn,"root",""); $sql="insert into Nation values(?,?)";
//将一条SQL语句放在服务器上准备运行
$stm=$pdo->prepare($sql); $attr=array("n005","苗族"); //执行预处理语句,执行成功返回true,失败返回false
if($stm->execute($attr));
{ }
?> <?php
//可以防止SQL注入攻击
$dsn="mysql:host=localhost;dbname=aaas";
$pdo=new PDO($dsn,"root",""); $sql="insert into Nation values(:code,:name)"; //将一条SQL语句放在服务器上准备运行
$stm=$pdo->prepare($sql); $attr=array("code"=>"n007","name"=>"水族"); //执行预处理语句,执行成功返回true,失败返回false
if($stm->execute($attr));
{ }
?> </body>
</html>
PDO:数据访问抽象层的更多相关文章
- PDO数据访问抽象层
PDO数据访问抽象层: 我们使用的mysqli是针对mysql这个数据库扩展的一个类,如果要用到别的数据库的话就可以用PDO来做 1.操作数据库 先来代码 <!--PDO--> <! ...
- PDO(数据访问抽象层)、pdo事务功能和预处理功能---2017-05-05
之前所学的数据访问都是用mysqli做成类来访问的,但是mysqli这个类只是针对mysql这个数据库的:那么如果访问其他类型的数据库呢? 那么这就用到了PDO(数据访问抽象层). 一.关于PDO基本 ...
- PHP中关于PDO数据访问抽象层的功能操作
PDO:数据访问抽象层 具有三大特点: 1.可以访问其它数据库 所有数据库都可以 2.具有事务功能 3.带有预处理语句功能(防止SQL注入攻击) 实例操作代码如下: <?php //1.造PD ...
- PDO数据访问抽象层(上)
PDO比MySQLi功能强大 PDO可以访问MySQL及其它数据库 一.造对象 <?php $dsn = "mysql:dbname = crud;host = localhost&q ...
- PDO 数据访问抽象层
1.操作其它数据库 (1)造对象 $dsn = "mysql:dbname=test3;host=localhost"; //数据源:两个参数:数据库驱动,链接数据库 $pdo = ...
- php 之 PDO数据访问抽象层(0513)
PDO(PHP Data Objects)是一种在PHP里连接数据库的使用接口. PDO与mysqli曾经被建议用来取代原本PHP在用的mysql相关函数, 基于数据库使用的安全性,因为后者欠缺对于S ...
- 5月13 PDO数据访问抽象层
方法1:较简单的 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://ww ...
- PDO数据访问抽象层(下)
PDO两大功能 一.事务功能 PDO的事务功能主要控制好几条sql语句同时成功或者同时失败(当其中一条SQL语句有错误时,同时好几条一起失败),失败时可以回滚操作 1.造对象 <?php $ds ...
- php PDO:数据访问抽象层
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
随机推荐
- C# Activator.CreateInstance 动态创建类的实例(一)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- Django的模型
Django的模型类相当于数据库的一张表,模型类的实例对象相当于表中的一行内容 Django提供了多种创建对象的方式,常用如下: 通过create()方法 1.Person.objects.creat ...
- linq基础,正则表达式,.net相关
声明扩展方法的步骤:类必须是static,方法是static,第一个参数是被扩展的对象,前面标注this.使用扩展方法的时候必须保证扩展方法类已经在当前代码中using. LINQ:将int数组中大 ...
- FreeMarker中在list中加入if判断
例如list中遍历releaseitem,在ri中获取audit的值,如果audit的值为0则表示正在审核中,如果为1则表示审核通过,如果为2则表示未审核. <#list releaseitem ...
- HugePage简介和KVM中使用HugePage
现在,有许多的处理器架构都支持多种的内存页大小,其中就包括比一般的page size大很多的huge page.就目前来说,尽管在个人电脑中基本都实现了对huge page的支持,然而,huge pa ...
- grails 解决emoji标签存入mysql
domain将存储emoji属性类型设置位byte[] class UserTest { byte[] nameBytes //存储emoji表情字段 Date dateCreated //grail ...
- 结构体成员管理AVClass AVOption之1AVClass
AVOption用于描述结构体中的成员变量.它最主要的作用可以概括为两个字:“赋值”. 一个AVOption结构体包含了变量名称,简短的帮助,取值等信息. 所有和AVOption有关的数据都存储在AV ...
- htm5 俄罗斯方块
<!DOCTYPE html> <html manifest="tetris.manifest"> <!--在HTML标签里manifest=”cac ...
- HTTP 请求:GET vs. POST
两种在客户端和服务器端进行请求-响应的常用方法是:GET 和 POST. GET - 从指定的资源请求数据 POST - 向指定的资源提交要处理的数据 GET 基本上用于从服务器获得(取回)数据.注释 ...
- python 装饰器 (多个参数的函数,带参数的装饰器)
最简单的模板是这样的 #-*-coding:utf-8-*- def outer(func): def inner(): print 'before' func() print 'after' # r ...