关于Thinkphp连接不上mssql数据库的方法

来源:互联网 发布:pad的壁纸软件 编辑:程序博客网 时间:2024/06/05 05:23



解决这个问题主要从以下几个方面去考虑:
1、thinkphp的配置是不是出现问题

'DB_TYPE'=>'mssql',
'DB_HOST'=>'192.168.0.8',
'DB_Name'=>'zhsheng',
'DB_USER'=>'sa',
'DB_PWD'=>'uuleaf',
'DB_PREFIX'=>'zs_',
'SHOW_PAGE_TRACE'=>true,
'DB_PORT'=>'',
注意如果没有端口号的话那一定留空。
2、注意php是不是已经支持mssql扩展了。
先到微软网站下载 SQL Server Driver for PHP , 这是一个自解压的EXE文件,解压缩后你会得到这么几个文件:

其中的52、53表示就是php的5.2.x和5.3.x 版本,你必须选择跟你php版本相匹配的;

vc6、vc9表示的是编译这个dll所使用的vc++编译器版本,基本上大多数时候,选vc6的;

nts、ts表示的是否是 ThreadSafe的,得根据安装的php版本来选择,如果你不确定,就两种情况分别尝试一下好了;

我服务器上安装的是 ThreadSafe版本的php-5.2.x,所以选择的是php_sqlsrv_52_nts_vc6.dll,把这个文件拷贝到php的ext目录,比如:

1

C:\php\ext

然后修改php.ini在适当的地方加上一行:

1

extension=php_sqlsrv_52_nts_vc6.dll

然后重启web服务器就可以了。
3、把thinkphp的官方扩展放到ThinkPHP\Lib\Think\Db\Driver文件夹下,扩展的下载地址看图片吧,小弟没有权限发链接。

对了,还有一个问题,就是thinkphp对数据库的操作方法在对sqlserver2005的数据库进行操作时有的不能用,这时候可以用thinkphp中原生态的sq语句操作l


http://www.thinkphp.cn/bug/1806.html


0 0