Mysql鏈接數據庫的操做

$link=mysql_connect("ip","數據庫名",密碼);
mysql_select_db("庫名",$link);
mysql_query("set names utf8");
$sql = "select id,name from brand";
$arr = mysql_query($sql); //執行sql語句

PDO鏈接數據庫方法:php

什麼是PDOmysql

PDOPHP data Object 提供了PHP操做多種數據庫的統一的接口sql

PDO的特色?數據庫

編碼的一致行:因爲PHP可用的各類數據庫擴展是由不一樣發行者編寫的,因此儘管全部擴展都提供了基本相同的特性,卻不知足編碼的一致性。PDO消除了這種不一致,提供可用於各類數據庫的單一接口。數組

靈活性:由於PDO在運行時加載必需的數據庫驅動程序,因此不須要在每次使用不一樣數據庫時從新配置和從新編譯PHP。例如,若是數據庫須要從Oracle切換到MySQL,只要加載PDO_MYSQL驅動程序就能夠了。ide

面向對象特性:PDO利用PHP5的面向對象特性,能夠得到更強大、更高效的數據庫通訊。性能

高性能:PDOC編寫,編譯爲PHP,與用PHP編寫的其餘解決方案相比,雖然其餘都相同,但提供了更高的性能。fetch

PDO的配置編碼

1)修改PHP.ini , 添加MYSQLPDO擴展spa

[PHP_PDO_MYSQL]

extension=php_pdo_mysql.dll

2)擴展目錄中要有相應的擴展文件

3PDO鏈接不一樣的數據庫,要有不一樣的數據庫驅動文件即咱們所加入配置文件的擴展

4)從新啓動APACHE,使配置生效


數據源配置的格式

數據源格式:

1$dsn = 'mysql:dbname=testdb;host=127.0.0.1';

 $user = 'dbuser';

 $password = 'dbpass';

2)聲明對象:

   $dbh = new PDO($dsn, $user, $password);

查詢的方法,查手冊

//執行添加

//$insertsql="insert into student(name,age) values('zhangsan',20)";

//if($pdo->exec($insertsql)){

//echo "添加成功";

//}

 

//總結:exec主要用於執行沒有返回結果集的操做,好比insert delete update,返回的是影響的記錄條數

 

//執行查詢

$sql="select * from student";

$result=$pdo->query($sql);

//query()執行查詢語句,返回結果集對象

//用循環利用fetch方法逐個的取出記錄,返回的是關聯數組和索引數組兩種數組,和mysql_fetch_array()的返回結果一致

while($rows=$result->fetch()){

//print_r($rows);

}

//fetchAll()方法能夠一次取出結果集中全部的數組,以二維數組的形式返回

//$data=$result->fetchAll();

//print_r($data);

//總結查詢方式一

//PDO::query($sql),利用PDO來執行sql語句

//PDOstatement::fetch()或者PDOstatement::fetch()來取結果集的數據



//查詢方式二

//PDO::prepare($sql),利用PDO來預執行sql語句

//PDOstatement::execute() 執行預處理

//PDOstatement::fetch()或者PDOstatement::fetch()來取結果集的數據

$res=$pdo->prepare($sql);//預處理

if($res->execute()){//執行預處理

$array=$res->fetchAll();

}

print_r($array);

 

//總結三

//PDO::lastInsertId():是返回上次插入操做,主鍵列類型是自增的最後的自增ID

    //PDOStatement::rowCount() :主要是用於PDO::query()PDO::prepare()進行DELETEINSERTUPDATE操做影響的結果集,對PDO::exec()方法和SELECT操做無效。



TP支持PDO

return array(  

‘DB_TYPE’=> ‘pdo’,  

// 注意DSN的配置針對不一樣的數據庫有所區別 請參考PHP手冊PDO類庫部分  

‘DB_DSN’=> ‘mysql:host=localhost;dbname=think’,  

‘DB_USER’=>’root’,  

‘DB_PWD’=>」,  

‘DB_PREFIX’=>’think_’,  

// 其餘項目配置參數………  

    ); 

相關文章
相關標籤/搜索