国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > WEB開發 > 正文

Laravel數據庫操作之-Eloquent ORM

2024-04-27 15:16:09
字體:
來源:轉載
供稿:網友

數據庫操作之-Eloquent ORM

Eloquent ORM簡介、模型的建立及查詢數據Eloquent ORM中新增數據、自定義時間戳及批量賦值的使用使用Eloquent ORM修改數據使用Eloquent ORM刪除數據

1. Eloquent ORM簡介、模型的建立及查詢數據

Eloquent ORM簡介 Laravel所自帶的Eloquent ORM是一個優美、簡介的ActiveRecord實現,用來實現數據庫操作每個數據表都有一個與之相對應的“模型(model)”用于和數據表交互模型的建立 新建模型Student.php,代碼如下:

模型文件所在位置laravel/app/Student.php

<?phpnamespace App;use Illuminate/Database/Eloquent/Model;class Student extends Model{ // 默認表名students // 手動指定表名 PRotected $table = 'student'; // 默認是id字段作為主鍵,指定id為主鍵 protected $primaryKey = 'id';}Eloquent ORM中的查詢 all()、find()、findOrFail()查詢構造器在ORM中的使用// 引入model模型use App/Student;// all() 返回是一個集合// $students = Student::all();// find()// $student = Student::find(1001);// findOrFail() 根據主鍵查找如果沒有找到就報錯// $student = Student::findOrFail(1006);// $students = Student::get();// $student = Student::where('id','>','1001')// ->orderBy('age','desc')// ->first();// echo '<pre>';// Student::chunk(2,function($students){// var_dump($students);// });// 聚合函數// $num = Student::count();$max = Student::where('id','>',1001)->max('age');var_dump($max);

2. Eloquent ORM中新增數據、自定義時間戳及批量賦值的使用

通過模型新增數據(涉及到自定義時間戳)使用模型的Create方法新增數據(涉及到批量賦值)

模型文件所在位置laravel/app/Student.php

<?phpnamespace App;use Illuminate/Database/Eloquent/Model;class Student extends Model{ // 默認表名students // 手動指定表名 protected $table = 'student'; // 默認是id字段作為主鍵,指定id為主鍵 protected $primaryKey = 'id'; // 指定允許批量賦值的字段 protected $fillable = ['name','age']; // 指定不允許批量賦值的字段 protected $guarded = []; // 自動維護時間戳 public $timestamps = true; // 插入時間戳 protected function getDateFormat() { return time(); } protected function asDateTime($val) { return $val; }}使用模型的Create方法新增數據(涉及到批量賦值)// 使用模型新增數據// $student = new Student();// $student->name = 'sean2';// $student->age = 20;// $bool = $student->save();// dd($bool);// 查詢時間戳// $student = Student::find(1010);// echo date('Y-m-d H:i:s',$student->created_at);// 使用模型的Create方法新增數據// $student = Student::create(// ['name'=>'imooc','age'=>18]// );// firstOrCreate() 查詢數據庫中字段的屬性,如果沒有,則新增一條// $student = Student::firstOrCreate(// ['name'=>'imoocs']// );// firstOrNew() 以屬性查找數據庫,沒有則生成新的實例,需要保存調用save()方法$student = Student::firstOrNew( ['name'=>'imooCSS'] );$bool = $student->save();dd($bool);

3. 使用Eloquent ORM修改數據

通過模型更新結合查詢語句批量更新// 通過模型更新數據// $student = Student::find(1013);// $student->name = 'kity';// $bool = $student->save();// var_dump($bool);$num = Student::where('id','>',1011)->update( ['age'=>41] );var_dump($num);

4. 使用Eloquent ORM刪除數據

通過模型刪除通過主鍵值刪除根據指定條件刪除// 通過模型刪除 // $student = Student::find(1013);// $bool = $student->delete();// var_dump($bool);// 通過主鍵刪除// $num = Student::destroy(1012);// $num = Student::destroy(1010,1011);// $num = Student::destroy([1008,1009]);$num = Student::where('id','>',1004)->delete();var_dump($num);
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 江山市| 贵溪市| 桐梓县| 罗田县| 类乌齐县| 时尚| 常山县| 永兴县| 靖江市| 南部县| 富蕴县| 法库县| 神池县| 乌兰浩特市| 正安县| 偏关县| 巫溪县| 南部县| 浮山县| 聂拉木县| 仁怀市| 五河县| 乌恰县| 新泰市| 利津县| 丰原市| 河南省| 潮州市| 尼玛县| 佛学| 辽宁省| 长治县| 连云港市| 杭锦后旗| 元江| 白朗县| 托克逊县| 日照市| 临颍县| 务川| 永嘉县|