?????個(gè)人主頁:@開發(fā)者-曼億點(diǎn)
????? hallo 歡迎 點(diǎn)贊?? 收藏? 留言?? 加關(guān)注?!
????? 本文由 曼億點(diǎn) 原創(chuàng)
????? 收錄于專欄:PHP程序開發(fā)
????
—
?前言?
??按照 MVC 的架構(gòu),對(duì)數(shù)據(jù)的操作應(yīng)該放在 Model 中完成,但如果不使用 Model,我們也可以用 laravel框架提供的 D8 類操作數(shù)據(jù)庫。而且,對(duì)于某些極其復(fù)雜的sq!,用 Model已經(jīng)很難完成,需要開發(fā)者自己手寫sql語句,使用用 DB 類去執(zhí)行原生sq!。larave! 中 DB類的基本用法 DB::table('tableName)獲取操作 tlgleName 表的實(shí)例。
??(一)數(shù)據(jù)庫的創(chuàng)建與配置
1.建立數(shù)據(jù):
(1)sql語句
(2)圖形界面
2.創(chuàng)建數(shù)據(jù)庫和測(cè)試表
create table member(
id int primary key auto_increment,
name varchar(32) not null,
aga tinyint unsigned not null,
email varchar(32) not null
) engine myisam charset utf8;
運(yùn)行效果:
3.數(shù)據(jù)庫在laravel框架中配置
在env文件里面:
4.在Test控制器中引導(dǎo)DB門面:
在自己的項(xiàng)目文件的頭文件中填寫:class IndexController extends Controller
5.定義一個(gè)增刪改查需要的路由:
添加路由:/homeAdd
刪除路由:/homeDel
更新路由:/homeUpdate
查找路由:/homeSelect
注意:添加路由的方法支持lavavel框架8.0以上的版本
??(二) insert增加數(shù)據(jù)
使用insert函數(shù)向數(shù)據(jù)庫member中添加多條數(shù)據(jù)
public function add(){
//定義關(guān)聯(lián)操作表
$db= DB::table('member');
//使用insert來增加記錄
$result = $db ->insert([
[
'name'=>'劉康',
'age'=>'18',
'email'=>'madongmei@qq.com'
],[
'name'=>'馬春梅',
'age'=>'19',
'email'=>'machunmei@qq.com'
]
]);
dd($result);
}
插入的數(shù)據(jù)如下:
??(三) delete刪除數(shù)據(jù)
在使用del刪除數(shù)據(jù),刪除有兩種,一種是物理刪除(本質(zhì)就是刪除),第二是邏輯刪除(本質(zhì)得修改)
數(shù)據(jù)刪除可以通過delect函數(shù)和truncate函數(shù)實(shí)現(xiàn)
delect delete表示刪除記錄
truncate表示表示清空整個(gè)數(shù)據(jù)表
delect的語法:
DB::table(‘member’)->where(‘id’,‘=’,‘6’)->delete();
列如:刪除id為2的記錄:
public function del()
{
$data=DB::table('member')->where('id','=','2')->delete();
dd($data);
}
刪除數(shù)據(jù)如下:
??(四)update 更新數(shù)據(jù)
數(shù)據(jù)修改可以使用 update()。
Update 表示可以修改整個(gè)記錄中的全部字段;
案列:把id=2的名稱,改完 ‘張三豐’
->where()->update([ ])
where語法:
->where(字段,運(yùn)算符,值) ?? ?? 如果運(yùn)算符為“=”,則第二個(gè)參數(shù)可以不寫
//使用update來更新數(shù)據(jù)
public function update()
{
$db=DB::table('member');
$rst=$db->where('id','=','2')->update([
'name'=>'張三豐',
'age'=>'21'
]);
dd($rst);
}
數(shù)據(jù)表結(jié)果:
??(五)select查找數(shù)據(jù)
案例1:獲取memer表中所有的數(shù)據(jù)
DB::table(‘member’)->get(); //相當(dāng)于select * from member;
1.返回值是一個(gè)集合對(duì)象:
public function select(){
//查詢?nèi)康臄?shù)據(jù)
$db=DB::table('member');
$data=$db->get();
dd($data);
}
查詢的結(jié)果如下:
2.使用遍歷的方式查詢數(shù)據(jù):
public function select(){
//查詢?nèi)康臄?shù)據(jù)
$db=DB::table('member');
//嘗試循環(huán)一下數(shù)據(jù)
foreach($data as $key=>$value){
echo "id是:{$value->id},名字是:{$value->name},郵箱是:{$value->email}<br/>";
}
查詢的結(jié)果如下:
3.查詢id大于2并且年齡小于21的數(shù)據(jù):
public function select(){
//查詢?nèi)康臄?shù)據(jù)
$db=DB::table('member');
$data=$db->where('id','>','2')->where('age','<','21')->get();
dd($data);
}
查詢的結(jié)果如下:文章來源:http://www.zghlxwxcb.cn/news/detail-851628.html
結(jié)束語??
以上就是PHP程序設(shè)計(jì)
持續(xù)更新PHP程序設(shè)計(jì)教程,歡迎大家訂閱系列專欄??PHP程序開發(fā)你們的支持就是曼億點(diǎn)創(chuàng)作的動(dòng)力??????文章來源地址http://www.zghlxwxcb.cn/news/detail-851628.html
到了這里,關(guān)于【PHP系統(tǒng)學(xué)習(xí)】——Laravel框架數(shù)據(jù)庫的連接以及數(shù)據(jù)庫的增刪改查的詳細(xì)教程的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!