1. 程式人生 > >ThinkPHP資料庫原生SQL增刪改查

ThinkPHP資料庫原生SQL增刪改查

首先use think\Db(注意think要小寫)

Db類支援原生SQL查詢操作,主要包括下面兩個方法:

query方法

query方法用於執行SQL查詢操作,如果資料非法或者查詢錯誤則返回false,否則返回查詢結果資料集(同select方法)。

使用示例:

Db::query("select * from think_user where status=1");

如果你當前採用了分散式資料庫,並且設定了讀寫分離的話,query方法始終是在讀伺服器執行,因此query方法對應的都是讀操作,而不管你的SQL語句是什麼。

execute方法

execute用於更新和寫入資料的sql操作,如果資料非法或者查詢錯誤則返回false ,否則返回影響的記錄數。

使用示例:

Db::execute("update think_user set name='thinkphp' where status=1");

如果你當前採用了分散式資料庫,並且設定了讀寫分離的話,execute方法始終是在寫伺服器執行,因此execute方法對應的都是寫操作,而不管你的SQL語句是什麼。

引數繫結

支援在原生查詢的時候使用引數繫結,包括問號佔位符或者命名佔位符,例如:

Db::query("select * from think_user where id=? AND status=?",[8,1]);
// 命名繫結
Db::execute("update think_user set name=:name where status=:status",['name'=>'thinkphp','status'=>1]);