この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:4
ページ更新者:guest
更新日時:2018-09-15 08:59:10

タイトル: INSERT

以下、LaravelにおけるINSERT文の実行例となります。

 

クエリビルダー

insertではなくinsertGetIdを指定すると、autoincrement列のIDを取得することが出来る。

<?php

namespace App\Repositories;

use DB;
use Illuminate\Http\Request;
class CategoryRepository
{
    private $tableName = "category";
    
    public function insert($request) {
        
        $params = array(
            "order_no" => $request->order_no,
            "name" => $request->name,
        );
        
        try {
            $id = DB::table($this->tableName)->
insertGetId(
                $params
            );
        } catch (Exception $ex) {
            Log::info("insert エラー: " . $ex->getMessage());
            
        }
        return $id;
    }
}

 

直書き

<?php
namespace App\Repositories;

use Carbon\Carbon;
use DB;

class UrlRepository
{
    public function insert(String $websiteId, String $url)
    {
        DB::
insert('
            INSERT INTO urls(
                website_id,
                url,
                created_at,
                updated_at
            ) values (
                ?,
                ?,
                ?,
                ?
            )', 
            [
                $websiteId, 
                $url,
                Carbon::now(),
                Carbon::now(),
            ]
        );
    }
}