標籤:exce echo 並且 代碼 var 事務 資料庫 try mysql
PDO
資料訪問抽象層
PDO的三個功能:
1.操作其它資料庫
2.事務功能
3.防止SQL注入攻擊
操作資料庫:
造PDO對象
//$dsn = "mysql:dbname=mydb;host=localhost"; //資料來源//$pdo = new PDO($dsn,"root","123");
//寫SQL語句
//$sql = "select * from nation";//$sql = "insert into nation values(‘n077‘,‘資料‘)";
//執行,返回的是PDOStatement對象
//$a = $pdo->query($sql); //執行查詢//$a = $pdo->exec($sql); //執行其他語句//var_dump($a);//$arr = $attr->fetchAll(PDO::FETCH_BOTH);//返回索引和關聯陣列
$arr = $attr->fetch(PDO::FETCH_ASSOC); //返回關聯陣列
//var_dump($arr);
//事務功能
//事務:能夠控制語句同時成功同時失敗,失敗時可以復原
$dsn = "mysql:dbname=mydb;host=localhost";$pdo = new PDO($dsn,"root","123");
//設定異常模式
$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
try{//開啟事務$pdo ->beginTransaction(); //復原點即若有錯誤,復原到這裡$sql1 = "insert into nation values(‘n080‘,‘是刪‘)";$sql2 = "insert into nation values(‘n070‘,‘好幾款‘)";$sql3 = "insert into nation values(‘n075‘,‘好幾款‘)";$pdo->exec($sql1);$pdo->exec($sql2);$pdo->exec($sql3);//提交$pdo->commit();}catch(Exception $e){//抓住try裡面出現的錯誤,並且處理//echo $e->getMessage(); //擷取異常資訊//設定pdo復原$pdo->rollBack();}//final()//{//最終執行,無論以上try代碼有沒有出錯,都會執行//}
?>
php部分---PDO;