php5.3不能连接mssql数据库的解决方法


Posted in PHP onDecember 27, 2014

本文实例讲述了php5.3不能连接mssql数据库的解决方法。分享给大家供大家参考。具体分析如下:

自从php5.3之后系统就不支持mssql_connect这个函数连接了,以前我也讲可以使用com接口来实现,现在我再介绍解决php5.3不能连接mssql数据库另一方法.

windows系统下,PHP5.3以上的版本已经不支持mssql扩展.

首先http://msdn.microsoft.com/en-us/sqlserver/ff657782.aspx 点击 get it 下载SQLSRV20.EXE。

将文件解压到php的扩展文件夹ext下,打开php.ini在结尾添加:

[PHP_PDO_SQLSRV] 

extension=php_pdo_sqlsrv_53_nts_vc6.dll 

[PHP_SQLSRV] 

extension=php_sqlsrv_53_nts_vc6.dll

保存后重启apache即可,附上简单的php连接的例子,代码如下:
<?php 

$serverName = "(127.0.0.1)"; 

$connectionInfo = array( "UID"=>"root", 

"PWD"=>"root2010", 

"Database"=>"master"); 

 

$conn = sqlsrv_connect( $serverName, $connectionInfo); 

if( $conn ) 

{ 

echo "Connection established.n"; 

} 

else 

{ 

echo "Connection could not be established.n"; 

die( print_r( sqlsrv_errors(), true)); 

} 

?>

我使用的是wamp5.1集成安装包,在windows server 2008上面做的测试,php5.4以上版本测试没有成功.

如果使用这个扩展连接Sql server 2005以上版本的sql server(如sql server 2008),你还需要在机器上先安装 SQL Server Native Client :http://download.microsoft.com/download/0/E/6/0E67502A-22B4-4C47-92D3-0D223F117190/sqlncli.msi

这个扩展为php新增了一系列sqlsrv_开头的函数,函数参考如下:

sqlsrv_begin_transaction 

sqlsrv_cancel 

sqlsrv_client_info 

sqlsrv_close 

sqlsrv_commit 

sqlsrv_configure 

sqlsrv_connect 

sqlsrv_errors 

sqlsrv_execute 

sqlsrv_fetch 

sqlsrv_fetch_array 

sqlsrv_fetch_object 

sqlsrv_fetch_metadata 

sqlsrv_free_stmt 

sqlsrv_get_config 

sqlsrv_get_field 

sqlsrv_has_rows 

sqlsrv_next_result 

sqlsrv_num_fields 

sqlsrv_num_rows 

sqlsrv_prepare 

sqlsrv_query 

sqlsrv_rollback 

sqlsrv_rows_affected 

sqlsrv_send_stream_data 

sqlsrv_server_info

更多详细的说明可以在刚才的自解压的文件中有个 SQLServerDriverForPHP.chm 帮助文件中可以找到打开后点击API Reference节点.

另外看一种odb连接方式,代码如下:

$dbhost = ''; 

$dbuser = ''; //你的mssql用户名 

$dbpass = ''; //你的mssql密码 

$dbname = ''; //你的mssql库名 

$connect=odbc_connect("Driver={SQL Server};Server=$dbhost;Database=$dbname","$dbuser","$dbpass"); 

$sql="select * from content"; 

$exec=odbc_exec($connect,$sql); 

while($row = (odbc_fetch_array($exec))) 

{ 

$row['id']   //?取字段值 

… 

}

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
Search Engine Friendly的URL设计
Oct 09 PHP
php 不同编码下的字符串长度区分
Sep 26 PHP
IP138 IP地址查询小偷实现代码
Feb 15 PHP
php中global和$GLOBALS[]的分析之一
Feb 02 PHP
关于PHPDocument 代码注释规范的总结
Jun 25 PHP
解析csv数据导入mysql的方法
Jul 01 PHP
zf框架db类的分页示例分享
Mar 14 PHP
destoon会员注册提示“数据校验失败(2)”解决方法
Jun 21 PHP
Symfony查询方法实例小结
Jun 28 PHP
TP5框架实现签到功能的方法分析
Apr 05 PHP
Laravel中GraphQL接口请求频率实战记录
Sep 01 PHP
php中配置文件保存修改操作 如config.php文件的读取修改等操作
May 12 PHP
解决phpcms更换javascript的幻灯片代码调用图片问题
Dec 26 #PHP
php+jQuery.uploadify实现文件上传教程
Dec 26 #PHP
php实现mysql备份恢复分卷处理的方法
Dec 26 #PHP
为PHP5.4开启Zend OPCode缓存
Dec 26 #PHP
Yii中使用PHPExcel导出Excel的方法
Dec 26 #PHP
PHP中mysqli_affected_rows作用行数返回值分析
Dec 26 #PHP
PHP使用memcache缓存技术提高响应速度的方法
Dec 26 #PHP
You might like
人工智能开始玩《星际争霸2》 你的操作跟得上吗?
2017/08/11 星际争霸
PHP中3种生成XML文件方法的速度效率比较
2012/10/06 PHP
PHP守护进程化在C和PHP环境下的实现
2017/11/21 PHP
PHP实现的简单路由和类自动加载功能
2018/03/13 PHP
ThinkPHP框架中使用Memcached缓存数据的方法
2018/03/31 PHP
ThinkPHP中获取指定日期后工作日的具体日期方法
2018/10/14 PHP
jquery实现手风琴效果实例代码
2013/11/15 Javascript
Jquery检验手机号是否符合规则并根据手机号检测结果将提交按钮设为不同状态
2015/11/26 Javascript
jQuery代码性能优化的10种方法
2016/06/21 Javascript
jQuery 利用$.ajax 时获取原生XMLHttpRequest 对象的方法
2016/08/25 Javascript
JavaScript 链式结构序列化详解
2016/09/30 Javascript
require、backbone等重构手机图片查看器
2016/11/17 Javascript
在vue中使用css modules替代scroped的方法
2018/03/10 Javascript
JS简单实现查看文档创建日期、修改日期和文档大小的方法示例
2018/04/08 Javascript
JSON生成Form表单的方法示例
2018/11/21 Javascript
Nodejs中怎么实现函数的串行执行
2019/03/02 NodeJs
在vue中使用G2图表的示例代码
2019/03/19 Javascript
详解小程序退出页面时清除定时器
2019/04/28 Javascript
vue-router的两种模式的区别
2019/05/30 Javascript
在mpvue框架中使用Vant WeappUI组件库的注意事项【推进】
2019/06/09 Javascript
Javascript和jquery在selenium的使用过程
2019/10/31 jQuery
基于Vue sessionStorage实现保留搜索框搜索内容
2020/06/01 Javascript
vue使用echarts实现水平柱形图实例
2020/09/09 Javascript
JavaScript通如何过RGraph实现动态仪表盘
2020/10/15 Javascript
[01:43]倾听DOTA2英雄之声 魅惑魔女国服配音鉴赏
2013/06/06 DOTA
python类装饰器用法实例
2015/06/04 Python
Python 含参构造函数实例详解
2017/05/25 Python
Python多继承顺序实例分析
2018/05/26 Python
python3对接mysql数据库实例详解
2019/04/30 Python
Tensorflow中k.gradients()和tf.stop_gradient()用法说明
2020/06/10 Python
联想韩国官网:Lenovo Korea
2018/05/10 全球购物
美国肌肉和力量商店:Muscle & Strength
2019/06/22 全球购物
司机检讨书
2014/02/13 职场文书
《玩具柜台前的孩子》教学反思
2014/02/13 职场文书
Mysql systemctl start mysqld报错的问题解决
2021/06/03 MySQL
浅谈自定义校验注解ConstraintValidator
2021/06/30 Java/Android