最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PHP PDO函數(shù)庫(PDO Functions)

 更新時(shí)間:2009年07月20日 22:51:07   作者:  
PDO是一個(gè)“數(shù)據(jù)庫訪問抽象層”,作用是統(tǒng)一各種數(shù)據(jù)庫的訪問接口,與mysql和mysqli的函數(shù)庫相比,PDO讓跨數(shù)據(jù)庫的使用更具有親和力.

在test庫里面生成table表,并寫入一些數(shù)據(jù):
復(fù)制代碼 代碼如下:

<?php
$dbh = new PDO('mysql:host=localhost;dbname=test', 'root', '');
$dbh->query('set names utf8;');
$sql = "
DROP TABLE IF EXISTS `table`;
CREATE TABLE `test`.`table` (
`id` INT( 10 ) NOT NULL AUTO_INCREMENT PRIMARY KEY,
`name` VARCHAR( 255 ) NOT NULL ,
`age` VARCHAR( 255 ) NOT NULL
) ENGINE = InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `test`.`table` (`name` ,`age`)VALUES ('samon', '27');
INSERT INTO `test`.`table` (`name` ,`age`)VALUES ('leo', '26');
INSERT INTO `test`.`table` (`name` ,`age`)VALUES ('ben', '28');
";
$dbh->query($sql);
?>
PDO->exec()方法的作用是處理一條SQL語句,并返回所影響的條目數(shù)。
PDO->query()方法的作用是處理一條SQL語句,并返回一個(gè)“PDOStatement”。
PDO->prepare()方法的作用是生成一個(gè)“查詢對(duì)象”。
PDO->lastInsertId()方法的作用是獲取寫入的最后一條數(shù)據(jù)的主鍵值。
<?php
$dbh = new PDO('mysql:host=localhost;dbname=test', 'root', '');
$dbh->query('set names utf8;');
$sql = "INSERT INTO `test`.`table` (`name` ,`age`)VALUES ('mick', 22);";
$dbh->query($sql);
$lid = $dbh->lastInsertId($sql);
print_r($lid); // 顯示主鍵的值
?>
PDO->quote()方法的作用是為某個(gè)SQL中的字符串添加引號(hào)。PDO->quote()方法有兩個(gè)參數(shù),第一個(gè)參數(shù)是字符串,第二個(gè)參數(shù)表示參數(shù)的類型。
PDO->getAttribute()方法的作用是獲取一個(gè)“數(shù)據(jù)庫連接對(duì)象”的屬性。PDO->setAttribute()方法的作用是為一個(gè)“數(shù)據(jù)庫連接對(duì)象”設(shè)定屬性。
<?php
// 修改默認(rèn)的錯(cuò)誤顯示級(jí)別
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
?>

屬性列表:
PDO::PARAM_BOOL
表示一個(gè)布爾類型
PDO::PARAM_NULL
表示一個(gè)SQL中的NULL類型
PDO::PARAM_INT
表示一個(gè)SQL中的INTEGER類型
PDO::PARAM_STR
表示一個(gè)SQL中的SQL CHAR,VARCHAR類型
PDO::PARAM_LOB
表示一個(gè)SQL中的large object類型
PDO::PARAM_STMT
表示一個(gè)SQL中的recordset類型,還沒有被支持
PDO::PARAM_INPUT_OUTPUT
Specifies that the parameter is an INOUT parameter for a stored procedure. You must bitwise-OR this value with an explicit PDO::PARAM_* data type.
PDO::FETCH_LAZY
將每一行結(jié)果作為一個(gè)對(duì)象返回
PDO::FETCH_ASSOC
僅僅返回以鍵值作為下標(biāo)的查詢的結(jié)果集,名稱相同的數(shù)據(jù)只返回一個(gè)
PDO::FETCH_NAMED
僅僅返回以鍵值作為下標(biāo)的查詢的結(jié)果集,名稱相同的數(shù)據(jù)以數(shù)組形式返回
PDO::FETCH_NUM
僅僅返回以數(shù)字作為下標(biāo)的查詢的結(jié)果集
PDO::FETCH_BOTH
同時(shí)返回以鍵值和數(shù)字作為下標(biāo)的查詢的結(jié)果集
PDO::FETCH_OBJ
以對(duì)象的形式返回結(jié)果集
PDO::FETCH_BOUND
將PDOStatement::bindParam()和PDOStatement::bindColumn()所綁定的值作為變量名賦值后返回
PDO::FETCH_COLUMN
表示僅僅返回結(jié)果集中的某一列
PDO::FETCH_CLASS
表示以類的形式返回結(jié)果集
PDO::FETCH_INTO
表示將數(shù)據(jù)合并入一個(gè)存在的類中進(jìn)行返回
PDO::FETCH_FUNC
PDO::FETCH_GROUP
PDO::FETCH_UNIQUE
PDO::FETCH_KEY_PAIR
以首個(gè)鍵值下表,后面數(shù)字下表的形式返回結(jié)果集
PDO::FETCH_CLASSTYPE
PDO::FETCH_SERIALIZE
表示將數(shù)據(jù)合并入一個(gè)存在的類中并序列化返回
PDO::FETCH_PROPS_LATE
Available since PHP 5.2.0
PDO::ATTR_AUTOCOMMIT
在設(shè)置成true的時(shí)候,PDO會(huì)自動(dòng)嘗試停止接受委托,開始執(zhí)行
PDO::ATTR_PREFETCH
設(shè)置應(yīng)用程序提前獲取的數(shù)據(jù)大小,并非所有的數(shù)據(jù)庫哦度支持
PDO::ATTR_TIMEOUT
設(shè)置連接數(shù)據(jù)庫超時(shí)的值
PDO::ATTR_ERRMODE
設(shè)置Error處理的模式
PDO::ATTR_SERVER_VERSION
只讀屬性,表示PDO連接的服務(wù)器端數(shù)據(jù)庫版本
PDO::ATTR_CLIENT_VERSION
只讀屬性,表示PDO連接的客戶端PDO驅(qū)動(dòng)版本
PDO::ATTR_SERVER_INFO
只讀屬性,表示PDO連接的服務(wù)器的meta信息
PDO::ATTR_CONNECTION_STATUS
PDO::ATTR_CASE
通過PDO::CASE_*中的內(nèi)容對(duì)列的形式進(jìn)行操作
PDO::ATTR_CURSOR_NAME
獲取或者設(shè)定指針的名稱
PDO::ATTR_CURSOR
設(shè)置指針的類型,PDO現(xiàn)在支持PDO::CURSOR_FWDONLY和PDO::CURSOR_FWDONLY
PDO::ATTR_DRIVER_NAME
返回使用的PDO驅(qū)動(dòng)的名稱
PDO::ATTR_ORACLE_NULLS
將返回的空字符串轉(zhuǎn)換為SQL的NULL
PDO::ATTR_PERSISTENT
獲取一個(gè)存在的連接
PDO::ATTR_STATEMENT_CLASS
PDO::ATTR_FETCH_CATALOG_NAMES
在返回的結(jié)果集中,使用自定義目錄名稱來代替字段名。
PDO::ATTR_FETCH_TABLE_NAMES
在返回的結(jié)果集中,使用自定義表格名稱來代替字段名。
PDO::ATTR_STRINGIFY_FETCHES
PDO::ATTR_MAX_COLUMN_LEN
PDO::ATTR_DEFAULT_FETCH_MODE
Available since PHP 5.2.0
PDO::ATTR_EMULATE_PREPARES
Available since PHP 5.1.3.
PDO::ERRMODE_SILENT
發(fā)生錯(cuò)誤時(shí)不匯報(bào)任何的錯(cuò)誤信息,是默認(rèn)值
PDO::ERRMODE_WARNING
發(fā)生錯(cuò)誤時(shí)發(fā)出一條php的E_WARNING的信息
PDO::ERRMODE_EXCEPTION
發(fā)生錯(cuò)誤時(shí)拋出一個(gè)PDOException
PDO::CASE_NATURAL
回復(fù)列的默認(rèn)顯示格式
PDO::CASE_LOWER
強(qiáng)制列的名字小寫
PDO::CASE_UPPER
強(qiáng)制列的名字大寫
PDO::NULL_NATURAL
PDO::NULL_EMPTY_STRING
PDO::NULL_TO_STRING
PDO::FETCH_ORI_NEXT
獲取結(jié)果集中的下一行數(shù)據(jù),僅在有指針功能時(shí)有效
PDO::FETCH_ORI_PRIOR
獲取結(jié)果集中的上一行數(shù)據(jù),僅在有指針功能時(shí)有效
PDO::FETCH_ORI_FIRST
獲取結(jié)果集中的第一行數(shù)據(jù),僅在有指針功能時(shí)有效
PDO::FETCH_ORI_LAST
獲取結(jié)果集中的最后一行數(shù)據(jù),僅在有指針功能時(shí)有效
PDO::FETCH_ORI_ABS
獲取結(jié)果集中的某一行數(shù)據(jù),僅在有指針功能時(shí)有效
PDO::FETCH_ORI_REL
獲取結(jié)果集中當(dāng)前行后某行的數(shù)據(jù),僅在有指針功能時(shí)有效
PDO::CURSOR_FWDONLY
建立一個(gè)只能向后的指針操作對(duì)象
PDO::CURSOR_SCROLL
建立一個(gè)指針操作對(duì)象,傳遞PDO::FETCH_ORI_*中的內(nèi)容來控制結(jié)果集
PDO::ERR_NONE (string)
設(shè)定沒有錯(cuò)誤時(shí)候的錯(cuò)誤信息
PDO::PARAM_EVT_ALLOC
Allocation event
PDO::PARAM_EVT_FREE
Deallocation event
PDO::PARAM_EVT_EXEC_PRE
Event triggered prior to execution of a prepared statement.
PDO::PARAM_EVT_EXEC_POST
Event triggered subsequent to execution of a prepared statement.
PDO::PARAM_EVT_FETCH_PRE
Event triggered prior to fetching a result from a resultset.
PDO::PARAM_EVT_FETCH_POST
Event triggered subsequent to fetching a result from a resultset.
PDO::PARAM_EVT_NORMALIZE
Event triggered during bound parameter registration allowing the driver to normalize the parameter name.
PDO->getAvailableDrivers()方法的作用是獲取有效的PDO驅(qū)動(dòng)器名稱。
PDO->errorInfo()方法的作用獲取錯(cuò)誤的信息,PDO->errorCode()方法的作用是獲取錯(cuò)誤碼。
復(fù)制代碼 代碼如下:

<?php
$dbh = new PDO('mysql:host=localhost;dbname=test', 'root', '');
$dbh->query('set names utf8;');
$sql = "INSERT INTO `test`.`table` (`name` ,`ageeeeee`)VALUES ('mick', 22);";
$dbh->query($sql);
print_r($dbh->errorInfo());
/**
* Array
* (
* [0] => 42S22
* [1] => 1054
* [2] => Unknown column 'ageeeeee' in 'field list'
* )
*/
?>

PDO->__construct()方法的作用是建立一個(gè)PDO鏈接數(shù)據(jù)庫的實(shí)例。
PDO->beginTransaction(),PDO->commit(),PDO->rollBack()這三個(gè)方法是在支持回滾功能時(shí)一起使用的。PDO->beginTransaction()方法標(biāo)明起始點(diǎn),PDO->commit()方法標(biāo)明回滾結(jié)束點(diǎn),并執(zhí)行SQL,PDO->rollBack()執(zhí)行回滾。
復(fù)制代碼 代碼如下:

<?php
try {
$dbh = new PDO('mysql:host=localhost;dbname=test', 'root', '');
$dbh->query('set names utf8;');
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$dbh->beginTransaction();
$dbh->exec("INSERT INTO `test`.`table` (`name` ,`age`)VALUES ('mick', 22);");
$dbh->exec("INSERT INTO `test`.`table` (`name` ,`age`)VALUES ('lily', 29);");
$dbh->exec("INSERT INTO `test`.`table` (`name` ,`age`)VALUES ('susan', 21);");
$dbh->commit();
} catch (Exception $e) {
$dbh->rollBack();
echo "Failed: " . $e->getMessage();
}
?>

相關(guān)文章

  • PHP定時(shí)任務(wù)獲取微信access_token的方法

    PHP定時(shí)任務(wù)獲取微信access_token的方法

    這篇文章主要介紹了PHP定時(shí)任務(wù)獲取微信access_token的方法,涉及php基于curl動(dòng)態(tài)獲取access_token及CentOS下crontab設(shè)置計(jì)劃任務(wù)的相關(guān)操作技巧,需要的朋友可以參考下
    2016-10-10
  • php抽獎(jiǎng)概率算法(刮刮卡,大轉(zhuǎn)盤)

    php抽獎(jiǎng)概率算法(刮刮卡,大轉(zhuǎn)盤)

    這篇文章主要為大家詳細(xì)介紹了php中獎(jiǎng)概率算法,可用于刮刮卡,大轉(zhuǎn)盤等抽獎(jiǎng)算法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-06-06
  • linux下安裝php的memcached客戶端

    linux下安裝php的memcached客戶端

    這篇文章主要介紹了linux下安裝php的memcached客戶端的步驟 ,需要的朋友可以參考下
    2014-08-08
  • PHP使用feof()函數(shù)讀文件的方法

    PHP使用feof()函數(shù)讀文件的方法

    這篇文章主要介紹了PHP使用feof()函數(shù)讀文件的方法,以實(shí)例形式對(duì)比了正確與錯(cuò)誤的用法,闡明了feof()函數(shù)的使用技巧,需要的朋友可以參考下
    2014-11-11
  • PHP+JavaScript實(shí)現(xiàn)無刷新上傳圖片

    PHP+JavaScript實(shí)現(xiàn)無刷新上傳圖片

    本文主要介紹了PHP+JavaScript實(shí)現(xiàn)無刷新上傳圖片的方法,具有很好的參考價(jià)值,下面跟著小編一起來看下吧
    2017-02-02
  • PHP實(shí)現(xiàn)通過URL提取根域名

    PHP實(shí)現(xiàn)通過URL提取根域名

    本文給大家分享的是個(gè)人在做項(xiàng)目的時(shí)候遇到的,需要通過php實(shí)現(xiàn)從URL中提取根域名的代碼以及實(shí)現(xiàn)思路,有需要的小伙伴可以參考下
    2016-03-03
  • PHP-FPM運(yùn)行狀態(tài)的實(shí)時(shí)查看及監(jiān)控詳解

    PHP-FPM運(yùn)行狀態(tài)的實(shí)時(shí)查看及監(jiān)控詳解

    php-fpm和nginx一樣內(nèi)建了一個(gè)狀態(tài)頁,對(duì)于想了解php-fpm的狀態(tài)以及監(jiān)控php-fpm非常有幫助。這篇文章就給大家詳細(xì)介紹了PHP-FPM運(yùn)行狀態(tài)的實(shí)時(shí)查看及監(jiān)控,有需要的朋友們可以參考學(xué)習(xí),感興趣的朋友們下面來一起看看吧。
    2016-11-11
  • php查看網(wǎng)頁源代碼的方法

    php查看網(wǎng)頁源代碼的方法

    這篇文章主要介紹了php查看網(wǎng)頁源代碼的方法,涉及php讀取網(wǎng)頁文件的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-03-03
  • php5.5使用PHPMailer-5.2發(fā)送郵件的完整步驟

    php5.5使用PHPMailer-5.2發(fā)送郵件的完整步驟

    PHPMailer已經(jīng)更新了很多版本了,本教程只針對(duì)老版本。下面這篇文章主要給大家介紹了關(guān)于php5.5使用PHPMailer-5.2發(fā)送郵件的完整步驟,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-10-10
  • 淺談ThinkPHP中initialize和construct的區(qū)別

    淺談ThinkPHP中initialize和construct的區(qū)別

    下面小編就為大家?guī)硪黄獪\談ThinkPHP中initialize和construct的區(qū)別。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-04-04

最新評(píng)論

汉源县| 长沙市| 辽源市| 邢台县| 霞浦县| 黄冈市| 怀安县| 肃北| 盐池县| 吴忠市| 阿拉善左旗| 叙永县| 峨眉山市| 邵阳市| 肇庆市| 个旧市| 巴东县| 清新县| 株洲县| 大连市| 北流市| 利川市| 日土县| 上饶市| 纳雍县| 海淀区| 肇庆市| 青海省| 金坛市| 海林市| 吉安县| 景德镇市| 锦屏县| 中江县| 灵宝市| 库尔勒市| 胶南市| 抚顺县| 化德县| 吴桥县| 陕西省|