您好,登錄后才能下訂單哦!
使用Laravel框架怎么操作DB facade數(shù)據(jù)庫?相信很多沒有經(jīng)驗(yàn)的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個(gè)問題。
創(chuàng)建數(shù)據(jù)庫
在這里,我們需要用到的有兩個(gè)文件,第一個(gè)是congfig目錄下的database.php,以及Laravel目錄下的env文件
如下圖:
然后創(chuàng)建數(shù)據(jù)庫這里,我用的是xampp的mysql數(shù)據(jù)庫,phpMyAdmin
我們創(chuàng)建一個(gè)數(shù)據(jù)庫,命名為laravel,如下圖所示:
然后在laravel數(shù)據(jù)庫下面添加一個(gè)數(shù)據(jù)表,并命名為student,然后點(diǎn)擊sql
在這里,因?yàn)槲沂且呀?jīng)創(chuàng)建過了一個(gè)表的,所以呢,他這里有東西存在,然后在這個(gè)可以輸入的框框里輸入以下代碼:
create table if not exists student( `id` INT AUTO_INCREMENT PRIMARY KEY, `name` VARCHAR(255) NOT NULL DEFAULT '' COMMENT '姓名', `age` TINYINT UNSIGNED not null DEFAULT 0 COMMENT '年齡', `sex` TINYINT UNSIGNED not null DEFAULT 10 COMMENT '性別', `created_at` INT not null DEFAULT 0 COMMENT '新增時(shí)間', `updated_at` INT not null DEFAULT 0 COMMENT '修改時(shí)間' )ENGINE=INNODB DEFAULT CHARSET=UTF8 AUTO_INCREMENT=1001 COMMENT='學(xué)生表';
這個(gè)時(shí)候,我們的數(shù)據(jù)庫已經(jīng)創(chuàng)建完成了,接下來就是要輸出他,輸出他的時(shí)候就需要我們打開env這個(gè)文件了
這里,我和大家簡單介紹一下,我選中的三個(gè)代表的分別是,數(shù)據(jù)庫名字:laravel,數(shù)據(jù)庫賬號(hào)root,數(shù)據(jù)庫密碼為空,上面那三個(gè)不過多介紹,從下往上依次是,端口,和地址,然后別的我都不知道了,學(xué)藝不精,望諒解!
然后怎么看數(shù)據(jù)庫賬號(hào)和密碼呢?很簡單,打開我們的phpmyadmin文件,點(diǎn)擊它的config.inc.php文件,然后即可查看他的賬戶和密碼,如下圖所示:
然后到這里,我們鏈接也做完了,接下來就是講解如何使用輸出他了
輸出數(shù)據(jù)庫,并進(jìn)行增刪改查
既然要輸出數(shù)據(jù)庫,那么我們就肯定要對他進(jìn)行路由控制器等一系列的綁定使用來達(dá)到輸出效果,然后創(chuàng)建控制器什么的我也不多說了,直接在Controller目錄下創(chuàng)建一個(gè)名為Student.php的控制器,然后創(chuàng)建一個(gè)相對應(yīng)的路由。
代碼如下:
namespace App\Http\Controllers; use Illuminate\Support\Facades\DB; class Student extends Controller { public function mql() { return 'my first mysql'; } }
然后測試一下是否能輸出
結(jié)果如下:
數(shù)據(jù)庫的查找
代碼如下:
namespace App\Http\Controllers; use Illuminate\Support\Facades\DB; class Student extends Controller { public function mql() { $Students = DB::select('select * from student');//查找一個(gè)名為student的數(shù)據(jù)表,因?yàn)樵趀nv里我們已經(jīng)定義了數(shù)據(jù)庫的名字是laravel,而student存放在laravel里,所以我們給個(gè)student即可 echo "<pre>"; print_r($Students); echo "</pre>"; } }
然后將它輸出,效果如下:
因?yàn)樗]有值
數(shù)據(jù)庫的新增
代碼如下:
namespace App\Http\Controllers; use Illuminate\Support\Facades\DB; class Student extends Controller { public function mql() { $Nadded = DB::insert('insert into student(name,age) values(?,?)',['Rarin',16]);//這里我們定義在student里的name,age新增值,values兩個(gè)問號(hào)將name和Rarin,age和16連接起來 echo "<pre>"; print_r($Nadded); echo "</pre>"; } }
效果如下圖:
因?yàn)槲沂屈c(diǎn)擊了兩次刷新,所以新增了兩個(gè)數(shù)據(jù)
數(shù)據(jù)庫的修改
代碼如下:
namespace App\Http\Controllers; use Illuminate\Support\Facades\DB; class Student extends Controller { public function mql() { $update= DB::update('update student set id = ? where age = ?',[1002,16]);//這里我設(shè)置的是,如果age的值是16的時(shí)候,那么我就把id的值改成1002 echo "<pre>"; print_r($update); echo "</pre>"; } }
效果自行演示
數(shù)據(jù)庫的刪除
代碼如下:
<?php namespace App\Http\Controllers; use Illuminate\Support\Facades\DB; class StudentController extends Controller { public function test1() { $delete = DB::delete('delete from student where id > ?',[1003]);//這里指的是,刪除id大于1003的數(shù)據(jù) echo "<pre>"; print_r($delete); echo "</pre>"; } } ?>
看完上述內(nèi)容,你們掌握使用Laravel框架怎么操作DB facade數(shù)據(jù)庫的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。