本文實(shí)例講述了Laravel框架DB facade數(shù)據(jù)庫(kù)操作。分享給大家供大家參考,具體如下:
前兩篇文章我們講述了Laravel下載介紹路由和MVC幾個(gè)知識(shí)點(diǎn),這篇我們就來(lái)講述一下關(guān)于數(shù)據(jù)庫(kù)的操作,有關(guān)于數(shù)據(jù)庫(kù)的增刪改查
創(chuàng)建數(shù)據(jù)庫(kù)
在這里,我們需要用到的有兩個(gè)文件,第一個(gè)是congfig目錄下的database.php,以及Laravel目錄下的env文件
如下圖:
然后創(chuàng)建數(shù)據(jù)庫(kù)這里,我用的是xampp的mysql數(shù)據(jù)庫(kù),phpMyAdmin
我們創(chuàng)建一個(gè)數(shù)據(jù)庫(kù),命名為laravel,如下圖所示:
然后在laravel數(shù)據(jù)庫(kù)下面添加一個(gè)數(shù)據(jù)表,并命名為student,然后點(diǎn)擊sql
在這里,因?yàn)槲沂且呀?jīng)創(chuàng)建過(guò)了一個(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ù)庫(kù)已經(jīng)創(chuàng)建完成了,接下來(lái)就是要輸出他,輸出他的時(shí)候就需要我們打開(kāi)env這個(gè)文件了
這里,我和大家簡(jiǎn)單介紹一下,我選中的三個(gè)代表的分別是,數(shù)據(jù)庫(kù)名字:laravel,數(shù)據(jù)庫(kù)賬號(hào)root,數(shù)據(jù)庫(kù)密碼為空,上面那三個(gè)不過(guò)多介紹,從下往上依次是,端口,和地址,然后別的我都不知道了,學(xué)藝不精,望諒解!
然后怎么看數(shù)據(jù)庫(kù)賬號(hào)和密碼呢?很簡(jiǎn)單,打開(kāi)我們的phpmyadmin文件,點(diǎn)擊它的config.inc.php文件,然后即可查看他的賬戶(hù)和密碼,如下圖所示:
然后到這里,我們鏈接也做完了,接下來(lái)就是講解如何使用輸出他了
輸出數(shù)據(jù)庫(kù),并進(jìn)行增刪改查
既然要輸出數(shù)據(jù)庫(kù),那么我們就肯定要對(duì)他進(jìn)行路由控制器等一系列的綁定使用來(lái)達(dá)到輸出效果,然后創(chuàng)建控制器什么的我也不多說(shuō)了,直接在Controller目錄下創(chuàng)建一個(gè)名為Student.php的控制器,然后創(chuàng)建一個(gè)相對(duì)應(yīng)的路由。
代碼如下:
namespace App\Http\Controllers;
use Illuminate\Support\Facades\DB;
class Student extends Controller
{
public function mql()
{
return 'my first mysql';
}
}
然后測(cè)試一下是否能輸出
結(jié)果如下:
數(shù)據(jù)庫(kù)的查找
代碼如下:
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ù)庫(kù)的名字是laravel,而student存放在laravel里,所以我們給個(gè)student即可
echo "pre>";
print_r($Students);
echo "/pre>";
}
}
然后將它輸出,效果如下:
因?yàn)樗](méi)有值
數(shù)據(jù)庫(kù)的新增
代碼如下:
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è)問(wèn)號(hào)將name和Rarin,age和16連接起來(lái)
echo "pre>";
print_r($Nadded);
echo "/pre>";
}
}
效果如下圖:
因?yàn)槲沂屈c(diǎn)擊了兩次刷新,所以新增了兩個(gè)數(shù)據(jù)
數(shù)據(jù)庫(kù)的修改
代碼如下:
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ù)庫(kù)的刪除
代碼如下:
?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)容感興趣的讀者可查看本站專(zhuān)題:《Laravel框架入門(mén)與進(jìn)階教程》、《php優(yōu)秀開(kāi)發(fā)框架總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門(mén)教程》、《php+mysql數(shù)據(jù)庫(kù)操作入門(mén)教程》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家基于Laravel框架的PHP程序設(shè)計(jì)有所幫助。
您可能感興趣的文章:- Laravel5.1數(shù)據(jù)庫(kù)連接、創(chuàng)建數(shù)據(jù)庫(kù)、創(chuàng)建model及創(chuàng)建控制器的方法
- Laravel5.5 數(shù)據(jù)庫(kù)遷移:創(chuàng)建表與修改表示例
- Laravel5.7 數(shù)據(jù)庫(kù)操作遷移的實(shí)現(xiàn)方法
- 在Laravel5.6中使用Swoole的協(xié)程數(shù)據(jù)庫(kù)查詢(xún)
- Laravel監(jiān)聽(tīng)數(shù)據(jù)庫(kù)訪問(wèn),打印SQL的例子
- Laravel框架使用monolog_mysql實(shí)現(xiàn)將系統(tǒng)日志信息保存到mysql數(shù)據(jù)庫(kù)的方法
- PHP的Laravel框架結(jié)合MySQL與Redis數(shù)據(jù)庫(kù)的使用部署
- Laravel框架數(shù)據(jù)庫(kù)CURD操作、連貫操作總結(jié)
- PHP開(kāi)發(fā)框架Laravel數(shù)據(jù)庫(kù)操作方法總結(jié)
- Laravel如何同時(shí)連接多個(gè)數(shù)據(jù)庫(kù)詳解
- Laravel5.1 框架數(shù)據(jù)庫(kù)操作DB運(yùn)行原生SQL的方法分析