【发布时间】:2015-04-15 01:31:00
【问题描述】:
我有一个连接到外部 MSSQL 数据库的 Laravel 5 项目(在 CentOS 7 机器上)。
我使用 FreeTDS 遵循here 概述的设置。
当我使用浏览器点击该页面时,出现错误:SQLSTATE[HY000] Unable to connect: Adaptive Server is unavailable or does not exist (severity 9)。
但是当我使用php artisan tinker 并执行App\MyModel::get(); 之类的操作时,它会返回一个带有记录/模型的Illuminate\Database\Eloquent\Collection 实例。
有人知道这是怎么回事吗?
更新
我的.env 如下所示:
SQLSRV_DB_DRIVER=sqlsrv
SQLSRV_DB_HOST=host.ip.address
SQLSRV_DB_DATABASE=my_db
SQLSRV_DB_USERNAME=my_username
SQLSRV_DB_PASSWORD=my_password
我的config/database.php 看起来像:
'sqlsrv' => [
'driver' => env('SQLSRV_DB_DRIVER'),
'host' => env('SQLSRV_DB_HOST'),
'database' => env('SQLSRV_DB_DATABASE'),
'username' => env('SQLSRV_DB_USERNAME'),
'password' => env('SQLSRV_DB_PASSWORD'),
'prefix' => '',
];
我的模型指定了一个连接:protected $connection = 'sqlsrv';
我正在使用带有 unixODBC 的 FreeTDS。
【问题讨论】:
-
你能添加你的数据库配置(没有密码/域)吗?
-
@Chris 我用信息更新了帖子。
标签: sql-server laravel-5 freetds sqlsrv