从PHP Framework Kohana连接到MSSQL

时间:2016-12-29 19:39:19

标签: php kohana

我正在尝试将php应用程序(使用框架Kohana)与Microsoft SQL Server连接,但它失败了!!!

技术背景:

  • Microsoft Windows Server 2012 R2 Standard。
  • 框架Kohana v2.3.4。
  • XAMPP Server v1.7.1:
    • Apache v2.2.11。
    • PHP 5.2.9。
  • Microsoft SQL Server 2012(Express Edition)。
  • Microsoft .NET Framework v4.0.20219.42000。


问题摘要:

  • 显然,mssql驱动没关系!我检查文件夹“... \ xampp \ php \ ext \”是否有“php_mssql.dll”,如果在php.ini文件中有一个引用...并且是!一切都好!
  • 我在Microsoft SQL Server Management Studio中没有任何身份验证问题(我正在使用SQL Server身份验证)。1
  • 我在Kohana数据库配置中遇到问题(我使用的是Management Studio的相同身份验证数据)。我在哪里添加了以下内容:

$ config ['testing'] =阵列

'benchmark'=> TRUE,
'persistent'=> TRUE,
'connection'=>阵列

'type'=> 'MSSQL',
'user'=> '用户名',
'pass'=> '密码',
'host'=> '服务器名\ SQLEXPRESS',
'port'=> FALSE,
'socket'=> FALSE,
'database'=> “数据库名称”
),
'character_set'=> 'UTF-8',
'table_prefix'=> '',
'object'=> TRUE,
'cache'=> FALSE,
'escape'=> TRUE
);

但是,Web浏览器的答案是“mssql_connect()[function.mssql-connect]:无法连接到服务器:SERVERNAME \ SQLEXPRESS”。

  • 我尝试更改主机名(我认为存在问题):没有'\ SQLEXPRESS'并使用机器IP地址。

  • 我尝试设置FALSE用户并在kohana数据库配置中传递属性。

重要的是要说:这台机器是一个测试服务器!我可以将应用程序与开发机器中的sql server连接。所以,我试图将开发机器应用程序与测试机器数据库服务器连接,我得到了同样的错误。测试和开发机器之间的独特技术差异在我正在使用SQL SERVER 2016和Windows 10的开发机器中。在开发机器中,我使用“Windows身份验证”在Management Studio中进行身份验证,并将用户设置为FALSE在kohana数据库配置中。

可能是什么问题?谢谢!

1 个答案:

答案 0 :(得分:0)

解决方案是设置文件流属性(在Sql Server配置管理器中 - > SQL Server服务 - >右键单击SQL Server(SQLEXPRESS) - >属性 - > FILESTREAM),为Transact-SQL启用文件流和文件IO访问并允许远程客户端访问FILESTREAM数据。