laravel數(shù)據(jù)庫使用簡易說明
首先可以使用查詢構造器和EloquentORM兩種方式
目前支持的數(shù)據(jù)庫類型有: mysql,Postgres,SQlite,SQL server 。
使用 DB 來facade來查詢。
首先 ?use DB;
DB::select('select * from users where active = ?',[1]);
這是一個簡單的查詢,它聚合于pdo,所以不需要對參數(shù)進行操作。DB::select($sql,$para)
第一個參數(shù)是sql,第二個參數(shù)是傳入值,delete,update,insert等參數(shù)同理。
普通無返回的sql可以使用statment來運行sql。
DB::statement('drop table users');
事務處理有兩種,一種自動的:DB::transaction
DB::transaction(function(){
DB::table('users')->update(['votes'=>1]);
DB::table('posts')->delete();
}); ? ?//只要在閉包函數(shù)內(nèi)沒有異常,數(shù)據(jù)將自動commit ,否則rollback數(shù)據(jù)
第二種手動方式
DB::beginTransaction();
你也可以通過rollBack方法來還原事務:
DB::rollBack();
最后,可以通過commit方法來提交這個事務:
DB::commit();
多數(shù)據(jù)庫的連接
$users=DB::connection('foo')->select(...);
foo為傳入數(shù)據(jù)庫的名稱。
查詢構造器的第二個使用方法table方法
DB::table('users')->get(); ?//查詢到所有的信息
DB::table('users')->where('name','John')->first(); ?//按照過濾條件查到第一條信息
DB::table('users')->where('name','John')->value('email');// 取字段為email的值
更多高級使用方法請參閱構造器