PHP PDO預定義常量

PHP PDO 參考手冊PHP PDO 參考手冊

以下常量由本擴展模塊定義,因此只有在本擴展的模塊被編譯到PHP中,或者在運行時被動態(tài)加載后才有效。

注意: PDO使用類常量自PHP 5.1。以前的版本使用的全局常量形式PDO_PARAM_BOOL中。

PDO::PARAM_BOOL (integer) 表示布爾數(shù)據(jù)類型。
PDO::PARAM_NULL (integer) 表示 SQL 中的 NULL 數(shù)據(jù)類型。
PDO::PARAM_INT (integer) 表示 SQL 中的整型。
PDO::PARAM_STR (integer) 表示 SQL 中的 CHAR、VARCHAR 或其他字符串類型。
PDO::PARAM_LOB (integer) 表示 SQL 中大對象數(shù)據(jù)類型。
PDO::PARAM_STMT (integer) 表示一個記錄集類型。當前尚未被任何驅動支持。
PDO::PARAM_INPUT_OUTPUT (integer) 指定參數(shù)為一個存儲過程的 INOUT 參數(shù)。必須用一個明確的 PDO::PARAM_* 數(shù)據(jù)類型跟此值進行按位或。
PDO::FETCH_LAZY (integer) 指定獲取方式,將結果集中的每一行作為一個對象返回,此對象的變量名對應著列名。PDO::FETCH_LAZY 創(chuàng)建用來訪問的對象變量名。在 PDOStatement::fetchAll() 中無效。
PDO::FETCH_ASSOC (integer) 指定獲取方式,將對應結果集中的每一行作為一個由列名索引的數(shù)組返回。如果結果集中包含多個名稱相同的列,則PDO::FETCH_ASSOC每個列名只返回一個值。
PDO::FETCH_NAMED (integer) 指定獲取方式,將對應結果集中的每一行作為一個由列名索引的數(shù)組返回。如果結果集中包含多個名稱相同的列,則PDO::FETCH_ASSOC每個列名 返回一個包含值的數(shù)組。
PDO::FETCH_NUM (integer) 指定獲取方式,將對應結果集中的每一行作為一個由列號索引的數(shù)組返回,從第 0 列開始。
PDO::FETCH_BOTH (integer) 指定獲取方式,將對應結果集中的每一行作為一個由列號和列名索引的數(shù)組返回,從第 0 列開始。
PDO::FETCH_OBJ (integer) 指定獲取方式,將結果集中的每一行作為一個屬性名對應列名的對象返回。
PDO::FETCH_BOUND (integer) 指定獲取方式,返回 TRUE 且將結果集中的列值分配給通過 PDOStatement::bindParam() 或 PDOStatement::bindColumn() 方法綁定的 PHP 變量。
PDO::FETCH_COLUMN (integer) 指定獲取方式,從結果集中的下一行返回所需要的那一列。
PDO::FETCH_CLASS (integer) 指定獲取方式,返回一個所請求類的新實例,映射列到類中對應的屬性名。

注意: 如果所請求的類中不存在該屬性,則調用 __set() 魔術方法

PDO::FETCH_INTO (integer) 指定獲取方式,更新一個請求類的現(xiàn)有實例,映射列到類中對應的屬性名。
PDO::FETCH_FUNC (integer) 允許在運行中完全用自定義的方式處理數(shù)據(jù)。(僅在 PDOStatement::fetchAll() 中有效)。
PDO::FETCH_GROUP (integer) 根據(jù)值分組返回。通常和 PDO::FETCH_COLUMN 或 PDO::FETCH_KEY_PAIR 一起使用。
PDO::FETCH_UNIQUE (integer) 只取唯一值。
PDO::FETCH_KEY_PAIR (integer) 獲取一個有兩列的結果集到一個數(shù)組,其中第一列為鍵名,第二列為值。自 PHP 5.2.3 起可用。
PDO::FETCH_CLASSTYPE (integer) 根據(jù)第一列的值確定類名。
PDO::FETCH_SERIALIZE (integer) 類似 PDO::FETCH_INTO ,但是以一個序列化的字符串表示對象。自 PHP 5.1.0 起可用。從 PHP 5.3.0 開始,如果設置此標志,則類的構造函數(shù)從不會被調用。
PDO::FETCH_PROPS_LATE (integer) 設置屬性前調用構造函數(shù)。自 PHP 5.2.0 起可用。
PDO::ATTR_AUTOCOMMIT (integer) 如果此值為 FALSE ,PDO 將試圖禁用自動提交以便數(shù)據(jù)庫連接開始一個事務。
PDO::ATTR_PREFETCH (integer) 設置預取大小來為你的應用平衡速度和內存使用。并非所有的數(shù)據(jù)庫/驅動組合都支持設置預取大小。較大的預取大小導致性能提高的同時也會占用更多的內存。
PDO::ATTR_TIMEOUT (integer) 設置連接數(shù)據(jù)庫的超時秒數(shù)。
PDO::ATTR_ERRMODE (integer) 關于此屬性的更多信息請參見 錯誤及錯誤處理 部分。
PDO::ATTR_SERVER_VERSION (integer) 此為只讀屬性;返回 PDO 所連接的數(shù)據(jù)庫服務的版本信息。
PDO::ATTR_CLIENT_VERSION (integer) 此為只讀屬性;返回 PDO 驅動所用客戶端庫的版本信息。
PDO::ATTR_SERVER_INFO (integer) 此為只讀屬性。返回一些關于 PDO 所連接的數(shù)據(jù)庫服務的元信息。
PDO::ATTR_CONNECTION_STATUS (integer)
PDO::ATTR_CASE (integer) 用類似 PDO::CASE_* 的常量強制列名為指定的大小寫。
PDO::ATTR_CURSOR_NAME (integer) 獲取或設置使用游標的名稱。當使用可滾動游標和定位更新時候非常有用。
PDO::ATTR_CURSOR (integer) 選擇游標類型。 PDO 當前支持 PDO::CURSOR_FWDONLY 和 PDO::CURSOR_SCROLL。一般為 PDO::CURSOR_FWDONLY,除非確實需要一個可滾動游標。
PDO::ATTR_DRIVER_NAME (string) 返回驅動名稱。

使用 PDO::ATTR_DRIVER_NAME 的例子:

<?php
if ($db->getAttribute(PDO::ATTR_DRIVER_NAME) == 'mysql') {
  echo "Running on mysql; doing something mysql specific here\n";
}
?>
PDO::ATTR_ORACLE_NULLS (integer) 在獲取數(shù)據(jù)時將空字符串轉換成 SQL 中的 NULL 。
PDO::ATTR_PERSISTENT (integer) 請求一個持久連接,而非創(chuàng)建一個新連接。關于此屬性的更多信息請參見 連接與連接管理 。
PDO::ATTR_STATEMENT_CLASS (integer)
PDO::ATTR_FETCH_CATALOG_NAMES (integer) 將包含的目錄名添加到結果集中的每個列名前面。目錄名和列名由一個小數(shù)點分開(.)。此屬性在驅動層面支持,所以有些驅動可能不支持此屬性。
PDO::ATTR_FETCH_TABLE_NAMES (integer) 將包含的表名添加到結果集中的每個列名前面。表名和列名由一個小數(shù)點分開(.)。此屬性在驅動層面支持,所以有些驅動可能不支持此屬性。
PDO::ATTR_STRINGIFY_FETCHES (integer)
PDO::ATTR_MAX_COLUMN_LEN (integer)
PDO::ATTR_DEFAULT_FETCH_MODE (integer) 自 PHP 5.2.0 起可用。
PDO::ATTR_EMULATE_PREPARES (integer) 自 PHP 5.1.3 起可用。
PDO::ERRMODE_SILENT (integer) 如果發(fā)生錯誤,則不顯示錯誤或異常。希望開發(fā)人員顯式地檢查錯誤。此為默認模式。關于此屬性的更多信息請參見 錯誤與錯誤處理 。
PDO::ERRMODE_WARNING (integer) 如果發(fā)生錯誤,則顯示一個 PHP E_WARNING 消息。關于此屬性的更多信息請參見 錯誤與錯誤處理。
PDO::ERRMODE_EXCEPTION (integer) 如果發(fā)生錯誤,則拋出一個 PDOException 異常。關于此屬性的更多信息請參見 錯誤與錯誤處理。
PDO::CASE_NATURAL (integer) 保留數(shù)據(jù)庫驅動返回的列名。
PDO::CASE_LOWER (integer) 強制列名小寫。
PDO::CASE_UPPER (integer) 強制列名大寫。
PDO::NULL_NATURAL (integer)
PDO::NULL_EMPTY_STRING (integer)
PDO::NULL_TO_STRING (integer)
PDO::FETCH_ORI_NEXT (integer) 在結果集中獲取下一行。僅對可滾動游標有效。
PDO::FETCH_ORI_PRIOR (integer) 在結果集中獲取上一行。僅對可滾動游標有效。
PDO::FETCH_ORI_FIRST (integer) 在結果集中獲取第一行。僅對可滾動游標有效。
PDO::FETCH_ORI_LAST (integer) 在結果集中獲取最后一行。僅對可滾動游標有效。
PDO::FETCH_ORI_ABS (integer) 根據(jù)行號從結果集中獲取需要的行。僅對可滾動游標有效。
PDO::FETCH_ORI_REL (integer) 根據(jù)當前游標位置的相對位置從結果集中獲取需要的行。僅對可滾動游標有效。
PDO::CURSOR_FWDONLY (integer) 創(chuàng)建一個只進游標的 PDOStatement 對象。此為默認的游標選項,因為此游標最快且是 PHP 中最常用的數(shù)據(jù)訪問模式。
PDO::CURSOR_SCROLL (integer) 創(chuàng)建一個可滾動游標的 PDOStatement 對象。通過 PDO::FETCH_ORI_* 常量來控制結果集中獲取的行。
PDO::ERR_NONE (string) 對應 SQLSTATE '00000',表示 SQL 語句沒有錯誤或警告地成功發(fā)出。當用 PDO::errorCode() 或 PDOStatement::errorCode() 來確定是否有錯誤發(fā)生時,此常量非常方便。在檢查上述方法返回的錯誤狀態(tài)代碼時,會經常用到。
PDO::PARAM_EVT_ALLOC (integer) 分配事件
PDO::PARAM_EVT_FREE (integer) 解除分配事件
PDO::PARAM_EVT_EXEC_PRE (integer) 執(zhí)行一條預處理語句之前觸發(fā)事件。
PDO::PARAM_EVT_EXEC_POST (integer) 執(zhí)行一條預處理語句之后觸發(fā)事件。
PDO::PARAM_EVT_FETCH_PRE (integer) 從一個結果集中取出一條結果之前觸發(fā)事件。
PDO::PARAM_EVT_FETCH_POST (integer) 從一個結果集中取出一條結果之后觸發(fā)事件。
PDO::PARAM_EVT_NORMALIZE (integer) 在綁定參數(shù)注冊允許驅動程序正常化變量名時觸發(fā)事件。

PHP PDO 參考手冊PHP PDO 參考手冊