Laravel 5.3 SQL Server迁移错误

时间:2017-03-01 09:35:20

标签: sql-server laravel

使用laravel 5.3访问sql server时出现迁移错误。

*使用带有WAMP的Windows 10,还需要指出我有必要的php扩展:

  1. php_pdo_sqlsrv_7_ts_x86
  2. php_sqlsrv_7_ts_x86
  3. 我在视图中从数据库中转储了一些数据,这意味着我可以访问数据库表,但是我无法运行迁移命令。我终于发现这篇文章可以帮助我,但问题是我不熟悉SQL服务器.. https://github.com/laravel/framework/issues/15841 我在下面的图像中运行迁移命令时的错误

    enter image description here

    我已经做了一些阅读,我知道sysobjects就像主表中包含有关数据库的所有信息..在阅读文章后我发现了SQLGrammer类,但我仍然不确定我在做什么。任何人都可以帮忙吗?

    这是我的.env

    enter image description here

3 个答案:

答案 0 :(得分:1)

您有pdo_mysql.so分机吗?确保使用phpinfo()

启用它

确保在app / config / database.php和.env文件中配置DEFAULT键。

确保安装了mysql:

sudo apt-get install php5-mysql
sudo apt-get install php-mysql

如果没有任何作用,如果你向我们展示你的作品会很好 app/config/database.php看起来像你的.env

答案 1 :(得分:0)

您是否已将sqlsrv配置添加到config / database.php中的connections数组中?

由于您已经在.env中添加了连接设置,因此它应该在mysql / psql等之后有一个类似于此的条目:

'sqlsrv' => [
   'driver' => 'sqlsrv',
   'host' => env('DB_HOST', 'localhost'), 
   'port' => env('DB_PORT', '3306'),
   'database' => env('DB_DATABASE', 'database'),
   'username' => env('DB_USERNAME', 'root'),
   'password' => env('DB_PASSWORD', ''),
   'prefix' => '',
],

您还必须在config / database.php中指定默认连接:

'default' => env('DB_CONNECTION', 'sqlsrv'),

答案 2 :(得分:0)

感谢@Matt Gibson在评论中给我这个链接。我刚刚在2个PHP.ini文件中复制了SQL Server驱动程序安装的扩展,apache中的1和PHP中的另一个非常感谢!!

php.ini - command line PHP and WAMP server access different files