【问题标题】:DB::connection() Laravel 5 not workingDB::connection() Laravel 5 不工作
【发布时间】:2017-08-03 13:24:35
【问题描述】:

我正在使用 Laravel 5.0,我创建了 2 个数据库,一个用于系统,两个用于数据。当我尝试更改连接以从我的第二个数据库中获取数据时,它会告诉错误

SQLSTATE[42P01]:未定义表:7 错误:关系“barang”不 存在第 1 行:从 barang 中选择 *

这是我的控制器

<?php namespace App\Http\Controllers;

use App\Http\Requests;
use App\Http\Controllers\Controller;

use Illuminate\Http\Request;
use DB;

class MultiController extends Controller {

    /**
     * Display a listing of the resource.
     *
     * @return Response
     */
    public function index()
    {
        $data = DB::connection('pgsql2')->select('select * from barang');

        return view('laporan.db')->withData($data);
    }

数据库.php

<?php

return [

    'fetch' => PDO::FETCH_CLASS,

    'default' => 'pgsql',

    'connections' => [

        'pgsql' => [
            'driver'   => 'pgsql',
            'host'     => env('DB_HOST', 'localhost'),
            'database' => env('DB_DATABASE', 'larasimak'),
            'username' => env('DB_USERNAME', 'postgres'),
            'password' => env('DB_PASSWORD', 'postgres'),
            'charset'  => 'utf8',
            'prefix'   => '',
            'schema'   => 'public',
        ],

        'pgsql2' => [
            'driver'   => 'pgsql',
            'host'     => env('DB_HOST', 'localhost'),
            'database' => env('DB_DATABASE', 'simkie_data'),
            'username' => env('DB_USERNAME', 'postgres'),
            'password' => env('DB_PASSWORD', 'postgres'),
            'charset'  => 'utf8',
            'prefix'   => '',
            'schema'   => 'public',
        ],

我的 DotEnv

APP_ENV=local
APP_DEBUG=true
APP_KEY=nlXoLNFcWAD9rtTGXCUSpDdbQxms1ADi

DB_HOST=localhost
DB_DATABASE=larasimak
DB_USERNAME=postgres
DB_PASSWORD=postgres

CACHE_DRIVER=file
SESSION_DRIVER=file
QUEUE_DRIVER=sync

MAIL_DRIVER=smtp
MAIL_HOST=mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null

【问题讨论】:

    标签: postgresql laravel laravel-5


    【解决方案1】:

    您应该设置第二个数据库的凭据。当前两个数据库都使用相同的凭据。尝试以下第二个数据库:

    数据库.php

     'pgsql2' => [
            'driver'   => 'pgsql',
            'host'     => env('PS2_DB_HOST', 'localhost'),
            'database' => env('PS2_DB_DATABASE', 'simkie_data'),
            'username' => env('PS2_DB_USERNAME', 'postgres'),
            'password' => env('PS2_DB_PASSWORD', 'postgres'),
            'charset'  => 'utf8',
            'prefix'   => '',
            'schema'   => 'public',
        ]
    

    .evn

    PS2_DB_HOST=localhost
    PS2_DB_DATABASE=simkie_data
    PS2_DB_USERNAME=postgres
    PS2_DB_PASSWORD=postgres
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-03-23
      • 2018-08-11
      • 2016-01-18
      • 1970-01-01
      • 2016-05-15
      • 2017-06-08
      • 2018-12-25
      • 2015-09-22
      相关资源
      最近更新 更多