首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Zend Framework3中的原理配置

Zend Framework3中的原理配置
EN

Stack Overflow用户
提问于 2018-03-13 18:58:10
回答 1查看 583关注 0票数 1

我正在为我的项目使用Zend Framework3。我想在Sql Server 2014中使用Doctrine。当我使用Zend-Db时,一切都很好,但使用Doctrine时会显示以下消息:

代码语言:javascript
复制
Fatal error: Invalid handle returned. in C:\Users\root\zendwithsqlserver\vendor\doctrine\dbal\lib\Doctrine\DBAL\Driver\PDOConnection.php on line 43

我已经完成了done所需的所有配置。首先,我在config/autoload/local中配置我的sql server数据库凭据,如下所示:

代码语言:javascript
复制
<?php 
use Doctrine\DBAL\Driver\PDOSqlsrv\Driver as PDOSqlsrvDriver;
return array(
'doctrine' => [
    'connection' => [
        'orm_default' => [
            'driverClass' => PDOSqlsrvDriver::class,
            'params' => [
                'host'     => 'localhost',
                'user'     => 'sa',
                'password' => 'mypassword',
                'dbname'   => 'blog',
            ]
        ],
    ],
],
);

最后,在位于模块/应用程序/模块/中的module.config.php文件中添加规则代码,以允许它知道我的实体所在的位置。

代码语言:javascript
复制
'doctrine' => [
    'driver' => [
        __NAMESPACE__ . '_driver' => [
            'class' => 'Doctrine\ORM\Mapping\Driver\AnnotationDriver',
            'cache' => 'array',
            'paths' => [__DIR__ . '/../src/Entity']
        ],
        'orm_default' => [
            'drivers' => [
                __NAMESPACE__ . '\Entity' => __NAMESPACE__ . '_driver'
            ]
        ]
    ]
]

我想知道如何修复此错误?:

代码语言:javascript
复制
Fatal error: Invalid handle returned. in C:\Users\root\zendwithsqlserver\vendor\doctrine\dbal\lib\Doctrine\DBAL\Driver\PDOConnection.php on line 43

任何想法或建议都是受欢迎的,谢谢。

EN

回答 1

Stack Overflow用户

发布于 2018-05-22 13:07:45

请按照以下代码更改local.php。

代码语言:javascript
复制
<?php
use Doctrine\DBAL\Driver\SQLSrv\Driver as SQLSrvDriver;

return [
   'doctrine' => [
       'connection' => [
           'orm_default' => [
               'driverClass' => SQLSrvDriver::class,
               'params' => [
                   'host'     => 'USER-PC\MYINSTANCE',                    
                   'user'     => 'sa',
                   'password' => 'mypassword',
                   'dbname'   => 'blog',
                   'port'     => '49166'
               ]
           ],            
       ],        
   ],
];

请参考此链接查找MSSQL端口号:Identify Port used by SQL Server Database Engine Using SQL Server Configuration Manager

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49254410

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档