thinkphp连接sqlserver2008,吐血经验,亲测成功

2025-04-22 07:15:55

1、首先根据php门溘曝晖版本选择php_pdo_sqlsrv_53_ts_vc9.dll的版本,其中53代表是php5.3 ts代表线程安全,nts表示线程不安全1. VC6与VC9的区别:VC6版本是使用Visual Studio 6编译器编译的,如果你的PHP是用Apache来架设的,那你就选择VC6版本。VC9版本是使用Visual Studio 2008编译器编译的,如果你的PHP是用IIS来架设的,那你就选择 VC9版本。VC9版本是针对IIS服务器的版本,没有对APACHE的支持,而VC6版本对IIS和apache都提供了支持2.Ts与nts的区别:Windows版的PHP从版本5.2.1开始有Thread Safe和NoneThread Safe之分。先从字面意思上理解,Thread Safe是线程安全,执行时会进行线程(Thread)安全检查,以防止有新要求就启动新线程的CGI执行方式而耗尽系统资源。Non Thread Safe是非线程安全,在执行时不进行线程(Thread)安全检查。3.PHP的两种执行方式:ISAPI和FastCGI。ISAPI执行方式是以DLL动态库的形式使用,可以在被用户请求后执行,在处理完一个用户请求后不会马上消失,所以需要进行线程安全检查,这样来提高程序的执行效率,所以如果是以ISAPI来执行PHP,建议选择ThreadSafe版本;而FastCGI执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高执行效率,所以,如果是以FastCGI来执行PHP,建议选择NonThread Safe版本。通过phpinfo(); 查看其中的 Thread Safety 项,这个项目就是查看是否是线程安全,如果是:enabled,一般来说应该是ts版,否则是nts版。

2、确定dll后放入php目录下的牡句圪握扩展文件夹,并更改extension=php_sqlsrv_53_ts_vc9.dllextension=php_pdo_sqlsrv_53_ts_v艘早祓胂c9.dll(这里的版本由自己下载的版本名称决定)之后重启apache。

3、安装msodbcsql.msi重启Apache服务器

4、thinkPHP配置'DB_TYP苇质缵爨E' => 'sqlsrv', // 数据库类型 '稆糨孝汶;DB_HOST' => ' 192.168.2.1', // 服务器地址 'DB_NAME' => 'students', // 数据库名 'DB_USER' => 'sa', // 用户名 'DB_PWD' => '123456', // 密码 'DB_CHARSET'=> 'utf8', // 字符集这里默认端口为1433,具体由你的sqlserver的配置决定,怎么配置请自行百度,在此不再赘述(友情链接:http://jingyan.baidu.com/article/9faa7231a922c1473c28cb23.html)

5、测试链接数据库,OK,成功啦,这个感觉有点繁琐,比mysql链接事儿多一点!

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢