查詢數據
查詢單條數據 使用 find() 方法
// table方法必須指定完整的數據表名 Db::table('user')->where('id',1)->find();
find方法查詢結果不存在返回NULL,否則返回結果數組
查詢多條數據/數據集 使用 select() 方法
Db::table('user')->select();
select方法查詢結果是一個數據集對象,如果需要轉換成數組可以使用 toArray()
Db::table('user')->select()->toArray();
值和列的查詢
查詢某個字段的值可以使用 value()
// 查詢某一字段某一個值--必須加條件 Db::table('user')->where('id',1)->value('name');
value查詢結果不存在,返回NULL
查詢某一列的值可以使用 column()
// 查詢某一列的值 Db::table('user')->column('name');
column查詢結果不存在,返回空數組
添加數據 save insert
可以使用save
方法統一寫入數據,自動判斷是新增還是更新數據(以寫入數據中是否存在主鍵數據為依據)。
// save $arr = ['name' => 'zhangsan' , 'pasd' => 123456]; Db::table('user')->save($arr);
// insert $arr = ['name' => 'zhangsan' , 'pasd' => 123456]; Db::table('user')->insert($arr);
添加數據后如果需要返回新增數據的自增主鍵,可以使用insertGetId
方法新增數據並返回主鍵值:
Db::table('user')->insertGetId($arr);
添加多條數據直接向 Db 類的 insertAll
方法傳入需要添加的數據(通常是二維數組)即可。
// 添加多條數據 $arr = [ ['name'=>'zhangsan','pasd'=>123456], ['name'=>'lisi','pasd'=>123456], ['name'=>'wangwu','pasd'=>123456] ]; // insertAll Db::table('user')->insertAll($arr);
insertAll
方法添加數據成功返回添加成功的條數
更新數據
可以使用save方法或者update方法
// 更新數據 $arr = [ 'id'=>1, 'name'=>'zhangsan', 'pasd'=>123456 ]; // save -- 數組里面加條件 Db::table('user')->save($arr);
$arr = [ 'name'=>'zhangsan', 'pasd'=>123456 ]; // update -- 執行語句加條件 Db::table('user')->where('id',1)->update($arr);
數據自增、自減
可以使用inc/dec
方法自增或自減一個字段的值( 如不加第二個參數,默認步長為1)。
// 自增、自減 Db::table('user')->where('id',10)->inc('jsid',5)->update(); Db::table('user')->where('id',10)->dec('jsid',5)->update();
刪除數據
// 根據主鍵刪除 Db::table('think_user')->delete(1); Db::table('think_user')->delete([1,2,3]);
// 條件刪除 Db::table('think_user')->where('id',1)->delete(); Db::table('think_user')->where('id','<',10)->delete();