一、連接數據庫
連接數據庫有兩種方式,一種是在config.php中配置,另一種是在實例化Db類時傳入連接參數。
在config.php中配置:
return?[ ????//?數據庫類型 ????'type'??????=>?'mysql', ????//?服務器地址 ????'hostname'??=>?'127.0.0.1', ????//?數據庫名 ????'database'??=>?'test', ????//?數據庫用戶名 ????'username'??=>?'root', ????//?數據庫密碼 ????'password'??=>?'', ????//?數據庫連接端口 ????'hostport'??=>?'', ];
實例化Db類時傳入連接參數:
立即學習“PHP免費學習筆記(深入)”;
use?thinkDb; $config?=?[ ????//?數據庫類型 ????'type'??????=>?'mysql', ????//?服務器地址 ????'hostname'??=>?'127.0.0.1', ????//?數據庫名 ????'database'??=>?'test', ????//?數據庫用戶名 ????'username'??=>?'root', ????//?數據庫密碼 ????'password'??=>?'', ????//?數據庫連接端口 ????'hostport'??=>?'', ]; Db::connect($config);
二、基本操作
1.查詢操作
use?thinkDb; //查詢一條數據 Db::table('user')->where('id',?1)->find(); //查詢多條數據 Db::table('user')->where('age',?'>',?18)->select();
2.插入操作
use?thinkDb; $data?=?[ ????'username'?=>?'admin', ????'password'?=>?md5('admin'), ????'sex'??????=>?1, ????'age'??????=>?20, ]; Db::table('user')->insert($data);
3.更新操作
use?thinkDb; Db::table('user')->where('id',?1)->update(['age'?=>?21]);
4.刪除操作
use?thinkDb; Db::table('user')->where('id',?1)->delete();
三、高級操作
1.鏈式操作
鏈式操作可以簡化sql語句的書寫。
use?thinkDb; Db::table('user') ????->alias('u') ????->join('role?r',?'u.role_id=r.id') ????->where('u.id',?1) ????->field('u.username,?r.name') ????->find();
2.調試方法
在開發環境中,我們經常需要查看sql語句的執行情況,Db類提供了三個調試方法:getLastSql、getExplain和getSqlLog。
use?thinkDb; Db::table('user')->getLastSql(); Db::table('user')->where('age',?'>',?18)->getExplain(); Db::table('user')->where('age',?'>',?18)->select(); Db::table('user')->getLastSql(); print_r(Db::getSqlLog());
getLastSql方法可以獲取最后一次執行的sql語句。
getExplain方法可以獲取sql語句的執行計劃。
getSqlLog方法可以獲取所有執行的sql語句和執行時間。
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END
喜歡就支持一下吧
相關推薦