<?php
$hostname = "localhost";
$database = "test_db";
$username = "root";
$password = "0000";
/* DSN :
mysql:host=localhost;port=3307;dbname=testdb;unix_socket=/tmp/mysql.sock;
pgsql:host=localhost port=5432 dbname=testdb user=bruce password=mypass;
mssql:host=localhost;dbname=testdb
sybase:host=localhost;dbname=testdb
dblib:host=localhost;dbname=testdb
odbc:DRIVER={IBM DB2 ODBC DRIVER};HOSTNAME=localhost;PORT=50000;DATABASE=SAMPLE;PROTOCOL=TCPIP;UID=db2inst1;PWD=ibmdb2;
odbc:Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\\db.mdb;Uid=Admin;
ibm:DRIVER={IBM DB2 ODBC DRIVER};DATABASE=testdb;HOSTNAME=11.22.33.444;PORT=56789;PROTOCOL=TCPIP;
oci:dbname=192.168.10.145/orcl;charset=CL8MSWIN1251
sqlite:/opt/databases/mydb.sq3
sqlite::memory:
sqlite2:/opt/databases/mydb.sq2
sqlite2::memory:
*/
$dsn="mysql:host=$hostname;dbname=$database";
try {
$DB_Link = new PDO($dsn, $username,$password
/*,array(
PDO::ATTR_PERSISTENT => true, // _ DB LB接
PDO::MYSQL_ATTR_INIT_COMMAND => // MySQL 前置O定
"SET NAMES 'utf8'; SET group_concat_max_len=65536;",
PDO::MYSQL_ATTR_USE_BUFFERED_QUERY=>false // MySQL 查n^
)*/
);
} catch (PDOException $e) {
// Y料BY失
$e->errorInfo ; // e`明
$e->getMessage(); // 返回常Y
$e->getPrevious(); // 返回前一常
$e->getCode(); // 返回常程式a
$e->getFile(); // 返回l生常的n案名
$e->getLine(); // 返回l生常的程式a行
$e->getTrace(); // backtrace() 列
$e->getTraceAsString(); // 已格成化成字串的 getTrace() Y
// e`...
}
/*
PDO::ATTR_CASE: 返回的Y料谖幻QO定
PDO::CASE_LOWER: 谖幻Q全部DQ成小
PDO::CASE_NATURAL: 使用原始谖幻Q(AO)
PDO:: CASE_UPPER: 谖幻Q全部DQ成大
*/
//$DB_Link->setAttribute(PDO::ATTR_CASE,PDO::CASE_NATURAL);
/*
PDO::ATTR_ERRMODE: e`蟾
PDO::ERRMODE_SILENT: 不@示e`信息,只@示e`a。
PDO::ERRMODE_WARNING: @示警告跟e`。
PDO::ERRMODE_EXCEPTION: 出常。
*/
$DB_Link->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_WARNING);
/*
PDO::ATTR_ORACLE_NULLS : DQo效的空字串
PDO::NULL_NATURAL: 不DQ(AO)。
PDO::NULL_EMPTY_STRING: 空字串DQ NULL。
PDO::NULL_TO_STRING: NULL DQ榭兆执
*/
//$DB_Link->setAttribute(PDO::ATTR_ORACLE_NULLS,PDO::NULL_NATURAL);
/*
PDO::ATTR_STRINGIFY_FETCHES:
Convert numeric values to strings when fetching. Requires bool.
*/
//$DB_Link->setAttribute(PDO::ATTR_STRINGIFY_FETCHES, true);
/*
PDO::ATTR_STATEMENT_CLASS: 更AO PDOStatement Class
*/
//class DBStatement extends PDOStatement {}
//$DB_Link->setAttribute(PDO::ATTR_STATEMENT_CLASS,
// array('DBStatement', array($DB_Link))
/*
PDO::ATTR_AUTOCOMMIT: 自咏灰滋
在O置成true的r候,PDOL停止接受委,_始绦
*/
//$DB_Link->setAttribute(PDO::ATTR_AUTOCOMMIT,true);
// O定存取的a方式
$DB_Link->exec("SET NAMES 'utf8';");
// O定 GROUP_CONCAT 的最大L度
$DB_Link->exec("SET group_concat_max_len=65536;");
// P]查快取
//$DB_Link->exec("SET SESSION query_cache_type=OFF;");