Laravel框架DB facade數(shù)據(jù)庫操作詳解
本文實(shí)例講述了Laravel框架DB facade數(shù)據(jù)庫操作。分享給大家供大家參考,具體如下:
前兩篇文章我們講述了Laravel下載介紹路由和MVC幾個知識點(diǎn),這篇我們就來講述一下關(guān)于數(shù)據(jù)庫的操作,有關(guān)于數(shù)據(jù)庫的增刪改查
創(chuàng)建數(shù)據(jù)庫
在這里,我們需要用到的有兩個文件,第一個是congfig目錄下的database.php,以及Laravel目錄下的env文件
如下圖:
然后創(chuàng)建數(shù)據(jù)庫這里,我用的是xampp的mysql數(shù)據(jù)庫,phpMyAdmin
我們創(chuàng)建一個數(shù)據(jù)庫,命名為laravel,如下圖所示:
然后在laravel數(shù)據(jù)庫下面添加一個數(shù)據(jù)表,并命名為student,然后點(diǎn)擊sql
在這里,因?yàn)槲沂且呀?jīng)創(chuàng)建過了一個表的,所以呢,他這里有東西存在,然后在這個可以輸入的框框里輸入以下代碼:
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 '新增時間', `updated_at` INT not null DEFAULT 0 COMMENT '修改時間' )ENGINE=INNODB DEFAULT CHARSET=UTF8 AUTO_INCREMENT=1001 COMMENT='學(xué)生表';
這個時候,我們的數(shù)據(jù)庫已經(jīng)創(chuàng)建完成了,接下來就是要輸出他,輸出他的時候就需要我們打開env這個文件了
這里,我和大家簡單介紹一下,我選中的三個代表的分別是,數(shù)據(jù)庫名字:laravel,數(shù)據(jù)庫賬號root,數(shù)據(jù)庫密碼為空,上面那三個不過多介紹,從下往上依次是,端口,和地址,然后別的我都不知道了,學(xué)藝不精,望諒解!
然后怎么看數(shù)據(jù)庫賬號和密碼呢?很簡單,打開我們的phpmyadmin文件,點(diǎn)擊它的config.inc.php文件,然后即可查看他的賬戶和密碼,如下圖所示:
然后到這里,我們鏈接也做完了,接下來就是講解如何使用輸出他了
輸出數(shù)據(jù)庫,并進(jìn)行增刪改查
既然要輸出數(shù)據(jù)庫,那么我們就肯定要對他進(jìn)行路由控制器等一系列的綁定使用來達(dá)到輸出效果,然后創(chuàng)建控制器什么的我也不多說了,直接在Controller目錄下創(chuàng)建一個名為Student.php的控制器,然后創(chuàng)建一個相對應(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');//查找一個名為student的數(shù)據(jù)表,因?yàn)樵趀nv里我們已經(jīng)定義了數(shù)據(jù)庫的名字是laravel,而student存放在laravel里,所以我們給個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兩個問號將name和Rarin,age和16連接起來 echo "<pre>"; print_r($Nadded); echo "</pre>"; } }
效果如下圖:
因?yàn)槲沂屈c(diǎn)擊了兩次刷新,所以新增了兩個數(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的時候,那么我就把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>"; } } ?>
效果自行演示一下即可
更多關(guān)于Laravel相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Laravel框架入門與進(jìn)階教程》、《php優(yōu)秀開發(fā)框架總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計入門教程》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家基于Laravel框架的PHP程序設(shè)計有所幫助。
- Laravel5.1數(shù)據(jù)庫連接、創(chuàng)建數(shù)據(jù)庫、創(chuàng)建model及創(chuàng)建控制器的方法
- Laravel5.5 數(shù)據(jù)庫遷移:創(chuàng)建表與修改表示例
- Laravel5.7 數(shù)據(jù)庫操作遷移的實(shí)現(xiàn)方法
- 在Laravel5.6中使用Swoole的協(xié)程數(shù)據(jù)庫查詢
- Laravel監(jiān)聽數(shù)據(jù)庫訪問,打印SQL的例子
- Laravel框架使用monolog_mysql實(shí)現(xiàn)將系統(tǒng)日志信息保存到mysql數(shù)據(jù)庫的方法
- PHP的Laravel框架結(jié)合MySQL與Redis數(shù)據(jù)庫的使用部署
- Laravel框架數(shù)據(jù)庫CURD操作、連貫操作總結(jié)
- PHP開發(fā)框架Laravel數(shù)據(jù)庫操作方法總結(jié)
- Laravel如何同時連接多個數(shù)據(jù)庫詳解
- Laravel5.1 框架數(shù)據(jù)庫操作DB運(yùn)行原生SQL的方法分析
相關(guān)文章
layui框架實(shí)現(xiàn)文件上傳及TP3.2.3(thinkPHP)對上傳文件進(jìn)行后臺處理操作示例
這篇文章主要介紹了layui框架實(shí)現(xiàn)文件上傳及TP3.2.3對上傳文件進(jìn)行后臺處理操作,結(jié)合實(shí)例形式分析了layui框架結(jié)合thinkPHP進(jìn)行文件上傳與處理操作相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2018-05-05PHP爬蟲之百萬級別知乎用戶數(shù)據(jù)爬取與分析
這篇文章主要介紹了PHP百萬級別知乎用戶數(shù)據(jù)爬取與分析的相關(guān)資料,需要的朋友可以參考下2016-01-01PHP數(shù)組去重比較快的實(shí)現(xiàn)方式
使用PHP的array_unique()函數(shù)允許你傳遞一個數(shù)組,然后移除重復(fù)的值,返回一個擁有唯一值的數(shù)組,通過本文給大家介紹PHP數(shù)組去重比較快的實(shí)現(xiàn)方式,需要的朋友參考下本文2016-01-01Laravel框架+Blob實(shí)現(xiàn)的多圖上傳功能示例
這篇文章主要介紹了Laravel框架+Blob實(shí)現(xiàn)的多圖上傳功能,結(jié)合實(shí)例形式詳細(xì)分析了Laravel框架+Blob進(jìn)行多張圖片上傳操作的前端提交與后臺處理相關(guān)操作技巧,需要的朋友可以參考下2018-01-01分享php代碼將360瀏覽器導(dǎo)出的favdb的sqlite數(shù)據(jù)庫文件轉(zhuǎn)換為html
這篇文章主要介紹了分享php代碼將360瀏覽器導(dǎo)出的favdb的sqlite數(shù)據(jù)庫文件轉(zhuǎn)換為html,需要的朋友可以參考下2015-12-12PHP curl偽造IP地址和header信息代碼實(shí)例
這篇文章主要介紹了PHP curl偽造IP地址和header信息代碼實(shí)例,本文給出服務(wù)器端和客戶端實(shí)現(xiàn)代碼,提供偽造功能和服務(wù)器端檢測代碼,需要的朋友可以參考下2015-04-04