Laravel插入数据库表数据

Laravel插入数据库表数据

我们可以使用DB::insert()方法插入记录。insert()方法的语法如下表中所示。
语法 bool insert(string $query, array $bindings = array())
参数
  • $query(string) – 在查询数据库中执行
  • $bindings(array) – 与查询绑定值
返回值 bool
描述
在数据库上运行 INSERT 语句

示例

第1步- 执行以下命令来创建一个名为- StudInsertController 的控制器
php artisan make:controller StudInsertController
第2步 - 成功执行后,您会收到以下输出 -

第3步 - 将以下代码复制到文件 - app/Http/Controllers/StudInsertController.php

<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use DB;
use App\Http\Requests;
use App\Http\Controllers\Controller;

class StudInsertController extends Controller {
   public function insertform(){
      return view('stud_create');
   }
	
   public function insert(Request $request){
      $name = $request->input('stud_name');
      DB::insert('insert into student (name,age) values(?,?)',[$name, $age]);
      echo "Record inserted successfully.<br/>";
      echo '<a href = "/insert">Click Here</a> to go back.';
   }
} 

第4步 - 创建一个名为  resources/views/stud_create.php 的视图文件,并复制下面的代码到此文件中。

resources/views/stud_create.php

<html>
   <head>
      <title>添加 - 学生管理</title>
   </head>   
   <body>
      <form action = "/create" method = "post">
         <input type = "hidden" name = "_token" value = "<?php echo csrf_token(); ?>">
      
         <table>
            <tr>
               <td>名字:</td>
               <td><input type='text' name='stud_name' /></td>
            </tr>
            <tr>
               <td>年龄:</td>
               <td><input type='text' name='stud_age' /></td>
            </tr>
            <tr>
               <td colspan = '2'>
                  <input type = 'submit' value = "添加学生"/>
               </td>
            </tr>
         </table>
			
      </form>
   
   </body>
</html>

第5步 - 添加以下行到 app/Http/routes.php 文件。

app/Http/routes.php

Route::get('insert','StudInsertController@insertform');
Route::post('create','StudInsertController@insert');
第6步 - 请访问以下网址以将数据记录插入数据库中。

http://localhost:8000/insert

第7步 - 结果显示如下图所示。


点击“添加学生”后,结果如下图所示:

数据库 student 表中的记录如下: