<?php //引入rb入口文件 include_once 'rb.php'; //定義dsn以及相關的數據 $dsn = 'MySQL:host=localhost;dbname=hwibs_model'; $user = 'root'; $pass = ''; $table = 'link'; //鏈接數據庫 R::setup($dsn,$user,$pass); //鏈接數據表 $handler = R::dispense($table); //inspect::反射表,將表的字段結構返回出來 //1.以一維數組打印出來 //2.如果不傳參數,就是反射出所有的表名來,也是一維數組[所以說我們如果想得到所有表的反射,則可以先進行第二步,在進行第一步] $result = R::inspect();//或者可以傳一個table名稱進去 //addDatabase::建立一個通信管道[事實上就是多個數據庫句柄了] R::addDatabase("j1",$dsn,$user,$pass);//第一個參數為自定義名稱 R::addDatabase("j2",$dsn,$user,$pass); R::addDatabase("j3",$dsn,$user,$pass); R::addDatabase("j4",$dsn,$user,$pass); //selectDatabase::選擇一個已建立好的通信管道[不知道這樣切換的意義有什么好處呢????] //1.當然,你可以傳入“default”,來選擇一個你最初由setup建立的管道 R::selectDatabase("j4"); R::freeze(true); //事務操作 //1.begin開啟一個事務 //2.執行store操作或exec操作 //3.捕獲異常,如果出現異常則需要回滾事務 //4.否則則正常提交事務即可 try{ R::begin(); R::store($handler); R::commit(); }catch (Exception $e){ R::rollback(); } //事務操作::沒看出來有什么大用處,事實上就是將begin、commit或失敗的rollback系統集成了而已, //1.我們要做的就是執行sql就好了 //2.但是注意前提是關閉了mysql自動提交的功能 R::transaction("t1"); function t1(){ echo '執行store或exec'; } ?>
新聞熱點
疑難解答