數據庫

laravel操作數據庫所使用的擴展 pdo,一定要開啓pdo擴展

提供了DB facade(原始查找)、*查找構造器、Eloquent ORM三種操作方法  

在laravel中修改連接數據庫的文件有兩處

Ø修改 .env文件

Ø修改config/database.php文件。

通過配置後,發現,如果我們的數據表有前綴的話,在.env文件中不能去設置


到此我們的數據庫的配置就完成了

注:表前綴,如果有則添加,沒有可以不修改。

DB類執行原生SQL語句

構造器自增自減:

DB::table('student')->increment('字段');  

DB::table('student')->decrement('字段');  

增加方法:

insert();可以同時增加一條或多條,返回值是布爾類型;  

insertGetId(),只能增加一條數據,返回自增ID;  

DB::table('無前綴表名')->insert(['name'=>'zhangsan','sex'=>0]);//單條數據;  

 DB::table('無前綴表名')->insert([  

  ['name'=>'zhangsan','sex'=>0],  

  ['name'=>'zhangsan','sex'=>0]  

]);//多條數據;   

$id = DB::table('無前綴表名')

->insertGetId(['name'=>'zhangsan','sex'=>0]);//單條數據;  

更新方法:  

update([]); 更新所有的字段,返回值為受到影響的行數;  

increment('字段',值)--遞增; decrement()--遞減;  只是修改某個字段  

where('字段','運算符','值')如果運算符為‘=’,可以不寫  

DB::table('無前綴表名')->where('id','2')->update(['name'=>'張三丰']);

查詢方法:

* 取出基本數據

DB::table('表')->get() 相當於:select * from 表;

返回值為集合對象  

獲取循環數據:  

foreach($res as $k=>$v){  

  echo $v->id;  //此處是對象,不是數組  

}

配合where()方法,還有'或者'關係:orWhere()

DB::table('表')->where()->orWhere()->get();

* 取單行數據  

first()方法:返回值是一個對象;等價於limit 1;

DB::table('表')->first();

* 取出某一行的某一個值

value()方法;

DB::table('表')->where('id','2')->value('name');

* 獲取某些字段的值  

select()方法;

DB::table('表')->where('id','2')->select('name','sex')->get();

設置別名:

DB::table('表')->where('id','2')->select('name as na','sex')

->get();

排序操作:orderBy('name','desc')