一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

PHP開發框架Laravel數據庫操作方法總結

一、讀/寫連接

有時您可能希望使用一個SELECT語句的數據庫連接,,另一個用于插入、更新和刪除語句。Laravel使這微風,將始終使用正確的連接是否使用原始查詢,查詢生成器或雄辯的ORM。

如何讀/寫連接應該配置,讓我們看看這個例子:
復制代碼 代碼如下:
'mysql' => array('read' => array('host' => '192.168.1.1'),'write' => array('host' => '196.168.1.2'),'driver' => 'mysql','database' =>'database','username' => 'root','password' => '','charset' => 'utf8','collation' => 'utf8_unicode_ci','prefix' => '')

注意,兩個鍵添加到配置陣列:讀和寫。這兩個鍵有數組值包含一個關鍵:主機。其余的讀寫數據庫選項從主mysql連接將合并后的數組。所以,我們只需要將物品放入讀取和寫入數組如果我們希望覆蓋主要數組中的值。所以,在這種情況下,192.168.1.1將被用作“讀”連接,while192.168.1.2將被用作“寫”連接。數據庫憑證、前綴、字符集和所有其他選項在主mysql數組將跨兩個共享連接。

二、運行查詢

一旦你已經配置了數據庫連接,你可以使用DB運行查詢類。

運行一個Select查詢

復制代碼 代碼如下:
$results = DB::select('select * from users where id = ?', array(1));

結果的選擇方法總是返回一個數組。

運行一個Insert語句

復制代碼 代碼如下:
  DB::insert('insert into users (id, name) values (?, ?)', array(1, 'Dayle'));

運行一個更新語句

復制代碼 代碼如下:
  DB::update('update users set votes = 100 where name = ?', array('John'));

運行一個Delete語句

復制代碼 代碼如下:
DB::delete('delete from users');

注意:update和delete語句返回的行數的影響操作。

運行一個通用聲明

復制代碼 代碼如下:
DB::statement('drop table users');

查詢事件監聽

你可以查詢事件監聽使用DB::聽方法:

復制代碼 代碼如下:
DB::listen(function($sql, $bindings, $time){ //});

三、數據庫事務

  運行在一個數據庫事務的一組操作,您可以使用事務方法:
復制代碼 代碼如下:
 DB::transaction(function(){ DB::table('users')->update(array('votes'
=> 1)); DB::table('posts')->delete();});

注意:在事務拋出的任何異常關閉將導致自動事務將回滾

有時你可能需要開始一個事務:

復制代碼 代碼如下:
DB::beginTransaction();

你可以通過回滾事務回滾方法:

復制代碼 代碼如下:
DB::rollback();

最后,您可以通過提交方法:提交一個事務

復制代碼 代碼如下:
DB::commit();

四、訪問連接

當使用多個連接,你可以訪問它們通過DB::連接方法:

復制代碼 代碼如下:
$users = DB::connection('foo')->select(...);

你也可以訪問原始的、潛在的PDO實例:
復制代碼 代碼如下:
$pdo = DB::connection()->getPdo();

有時你可能需要重新連接到一個給定的數據庫:
復制代碼 代碼如下:
DB::reconnect('foo');

如果你需要斷開從給定的數據庫將超過底層PDO實例'smax_connections限制,使用斷開連接方法:
復制代碼 代碼如下:
DB::disconnect('foo');

五、查詢日志

默認情況下,Laravel日志保存在內存的所有查詢運行當前的請求。然而,在某些情況下,例如當插入的行數,這可能會導致應用程序使用多余的內存。禁用日志,你可以使用disableQueryLog方法:

復制代碼 代碼如下:
DB::connection()->disableQueryLog();

o得到一組執行的查詢,您可以使用getQueryLog方法:
復制代碼 代碼如下:
$queries = DB::getQueryLog();

php技術PHP開發框架Laravel數據庫操作方法總結,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产九九在线 | 免费国产在线观看不卡 | 欧美一级激情 | 国产高清视频免费 | 成人怡红院视频在线观看 | 日本加勒比系列 | 亚洲小视频在线观看 | 日本一本色道 | 在线视频久 | 四虎 2022 永久网站 | 国产成人免费午夜在线观看 | 亚洲一区二区三区在线网站 | 国产精品青草久久久久福利99 | 成人午夜视频一区二区国语 | 五月婷婷六月丁香综合 | 欧美激情亚洲激情 | 亚洲午夜久久久久久噜噜噜 | 色婷婷久久合月综 | 黄在线视频播放免费网站 | 欧美另类videosbestsex视频 | 三区在线观看 | 午夜欧美激情 | 五月婷婷六月丁香 | 精品无码一区在线观看 | 韩国免费乱理论片在线观看2018 | 色多多免费视频 | 牛牛本精品99久久精品88m | 九九九九九九伊人 | 激情综合色综合久久综合 | 中文字幕一二三区 | 一区二区三区高清在线观看 | 日本一区二区三区在线 观看网站 | 一二三四视频在线社区7 | 91啦视频在线 | xxxx人成高清免费图片 | 91人碰 | 91视频免费观看网站 | 99999久久久久久亚洲 | 亚洲视频久久 | 亚洲一区二区三区网站 | 美女大胸又爽又黄网站 |