溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

使用Laravel框架怎么操作DB facade數(shù)據(jù)庫

發(fā)布時(shí)間:2021-05-31 16:29:14 來源:億速云 閱讀:145 作者:Leah 欄目:開發(fā)技術(shù)

使用Laravel框架怎么操作DB facade數(shù)據(jù)庫?相信很多沒有經(jīng)驗(yàn)的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個(gè)問題。

創(chuàng)建數(shù)據(jù)庫

在這里,我們需要用到的有兩個(gè)文件,第一個(gè)是congfig目錄下的database.php,以及Laravel目錄下的env文件

如下圖:

使用Laravel框架怎么操作DB facade數(shù)據(jù)庫

使用Laravel框架怎么操作DB facade數(shù)據(jù)庫

然后創(chuàng)建數(shù)據(jù)庫這里,我用的是xampp的mysql數(shù)據(jù)庫,phpMyAdmin

我們創(chuàng)建一個(gè)數(shù)據(jù)庫,命名為laravel,如下圖所示:

使用Laravel框架怎么操作DB facade數(shù)據(jù)庫

然后在laravel數(shù)據(jù)庫下面添加一個(gè)數(shù)據(jù)表,并命名為student,然后點(diǎn)擊sql

使用Laravel框架怎么操作DB facade數(shù)據(jù)庫

在這里,因?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è)文件了

使用Laravel框架怎么操作DB facade數(shù)據(jù)庫

這里,我和大家簡單介紹一下,我選中的三個(gè)代表的分別是,數(shù)據(jù)庫名字:laravel,數(shù)據(jù)庫賬號(hào)root,數(shù)據(jù)庫密碼為空,上面那三個(gè)不過多介紹,從下往上依次是,端口,和地址,然后別的我都不知道了,學(xué)藝不精,望諒解!

然后怎么看數(shù)據(jù)庫賬號(hào)和密碼呢?很簡單,打開我們的phpmyadmin文件,點(diǎn)擊它的config.inc.php文件,然后即可查看他的賬戶和密碼,如下圖所示:

使用Laravel框架怎么操作DB facade數(shù)據(jù)庫

然后到這里,我們鏈接也做完了,接下來就是講解如何使用輸出他了

輸出數(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é)果如下:

使用Laravel框架怎么操作DB facade數(shù)據(jù)庫

數(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>";
 }
}

然后將它輸出,效果如下:

使用Laravel框架怎么操作DB facade數(shù)據(jù)庫

因?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>";
 }
}

效果如下圖:

使用Laravel框架怎么操作DB facade數(shù)據(jù)庫

因?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è)資訊頻道,感謝各位的閱讀!

向AI問一下細(xì)節(jié)

免責(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)容。

AI