php连接MSsql server的五种方法总结


Posted in PHP onMarch 04, 2018

参考php手册,对php连接sql server系列做出个小结。主要有五种方式:

一、通过mssql_系列函数

mssql_系列函数主要针对php5.3以下的版本和sqlserver2000及以上版本使用。

在php.ini中将;extension=php_mssql.dll;extension=php_msql.dll;extension=php_pdo_mssql.dll ;extension=php_pdo_odbc.dll 前面的分号去掉。

<?php
 $server ="localhost"; //服务器IP地址,如果是本地,可以写成localhost
 $uid ="sa"; //用户名
 $pwd ="123456"; //密码
 $database ="jb51net"; //数据库名称
 
////进行数据库连接
 $conn =mssql_connect($server,$uid,$pwd) or die ("connect failed");
 mssql_select_db($database,$conn);
 
////执行查询语句
 $query ="select * from A_PHP";
 $row =mssql_query($query);
 
////打印输出查询结果
 while($list=mssql_fetch_array($row))
 {
    print_r($list);
    echo "<br>";
 }
?>

二、通过sqlsrv_系列函数

sqlsrv_系列函数主要针对php5.3以上的版本和sql server 2005以上版本使用。

需要下载安装Microsoft Drivers for PHP for SQL Server驱动,地址:https://msdn.microsoft.com/library/dn865013.aspx。下载后解压放到php对应的ext目录下。然后打开php.ini文件,在extension 后面添加一下配置

extension=php_pdo_sqlsrv_53_ts.dll
extension=php_sqlsrv_53_ts.dll

重启apache,查看phpinfo(),确保apache已经支持sqlsrv。如下图所示:

 php连接MSsql server的五种方法总结

并且安装sqlncli.msi,这个文件是协助windows环境访问sql server所在的数据库服务器的

<?php

 $serverName = "localhost";
 $connectionInfo = array( "Database"=>"jb51net", "UID"=>"sa", "PWD"=>"123456");
 $conn = sqlsrv_connect( $serverName, $connectionInfo );
 if( $conn === false ) {
   die( print_r( sqlsrv_errors(), true));
 }

 $sql = "SELECT * FROM dbo.A_PHP";
 $stmt = sqlsrv_query( $conn, $sql );
 if( $stmt === false) {
   die( print_r( sqlsrv_errors(), true) );
 }


 while($row = sqlsrv_fetch_array($stmt))
 {echo $row[0]."-----".$row[1]."<br/>";}
?>

三、通过odbc方式连接sqlserver系列

需要在php.ini中开启php_pdo_odbc.dll扩展。

php连接MSsql server的五种方法总结

<?php
$con = odbc_connect('DRIVER={SQL Server};SERVER=localhost;DATABASE=jb51net,'sa','123456');
$query = "SELECT * FROM dbo.A_PHP";
$result = odbc_do($con,$query);
while(odbc_fetch_row($result))
{
  $list = odbc_result($result, "id");	print_r($list);echo '<br/>';
}
?>

四、通过PDO方式连接sqlserver

在php.ini中开启php_pdo_mssql.dll扩展。在phpinfo中可查看

<?php
 $conn = new PDO("sqlsrv:server=localhost;database=jb51net","sa","123456");
 $sql = "select count(*) count from CKXS2";
 $res = $conn->query($sql);
 while ($row = $res->fetch()){
 print_r($row);
 }

?>

五、通过COM方式连接。

下面是实现代码:

<?php
 $conn = new Com("ADODB.Connection"); //实例化一个Connection对象 
 $connstr = "provider=sqloledb;datasource=.;uid=sa;pwd=123456;database=jb51net;"; 
 $conn->Open($connstr); 
 $rs = new Com("ADODB.Recordset"); //实例化一个Recordcount对象 

 $rs->Open('select * from CKXS2 ', $conn, 1, 1); 
 $count = $rs->RecordCount; 
 echo "共有{$count}条纪录<br />"; 
?>
PHP 相关文章推荐
用PHP实现小型站点广告管理
Oct 09 PHP
让你成为更出色的PHP开发者的10个技巧
Feb 25 PHP
PHP中的生成XML文件的4种方法分享
Oct 06 PHP
php实现把数组按指定的个数分隔
Feb 17 PHP
PHP两种去掉数组重复值的方法比较
Jun 19 PHP
PHP实现采集抓取淘宝网单个商品信息
Jan 08 PHP
PHP中使用Memache作为进程锁的操作类分享
Mar 30 PHP
mysql_escape_string()函数用法分析
Apr 25 PHP
WordPress过滤垃圾评论的几种主要方法小结
Jul 11 PHP
PHP7标量类型declare用法实例分析
Sep 26 PHP
ThinkPHP5.0框架结合Swoole开发实现WebSocket在线聊天案例详解
Apr 02 PHP
ThinkPHP5.0框架实现切换数据库的方法分析
Oct 30 PHP
php记录搜索引擎爬行记录的实现代码
Mar 02 #PHP
LaravelS通过Swoole加速Laravel/Lumen详解
Mar 02 #PHP
PHP生成随机数的方法总结
Mar 01 #PHP
PHP Post获取不到非表单数据的问题解决办法
Feb 27 #PHP
php实现生成带二维码图片并强制下载功能
Feb 24 #PHP
php递归函数怎么用才有效
Feb 24 #PHP
php格式文件打开的四种方法
Feb 24 #PHP
You might like
PHP超全局数组(Superglobals)介绍
2015/07/01 PHP
ASP 过滤数组重复数据函数(加强版)
2010/05/31 Javascript
Javacript实现颜色梯度变化和渐变的效果代码
2013/05/31 Javascript
jQuery中的pushStack实现原理和应用实例
2015/02/03 Javascript
浅析Vue 和微信小程序的区别、比较
2018/08/03 Javascript
原生JS实现动态加载js文件并在加载成功后执行回调函数的方法
2020/12/30 Javascript
详解关于element el-button使用$attrs的一个注意要点
2018/11/09 Javascript
详解Vuex下Store的模块化拆分实践
2019/07/31 Javascript
JavaScript实现猜数字游戏
2020/05/20 Javascript
解决Echarts2竖直datazoom滑动后显示数据不全的问题
2020/07/20 Javascript
浅谈鸿蒙 JavaScript GUI 技术栈
2020/09/17 Javascript
[07:20]2014DOTA2西雅图国际邀请赛 选手讲解积分赛第二天
2014/07/11 DOTA
python获取网页状态码示例
2014/03/30 Python
Python兔子毒药问题实例分析
2015/03/05 Python
python中根据字符串调用函数的实现方法
2016/06/12 Python
python xml解析实例详解
2016/11/14 Python
一篇文章读懂Python赋值与拷贝
2018/04/19 Python
Python解决八皇后问题示例
2018/04/22 Python
利用pandas读取中文数据集的方法
2018/07/25 Python
matplotlib实现热成像图colorbar和极坐标图的方法
2018/12/13 Python
Python3获取拉勾网招聘信息的方法实例
2019/04/03 Python
python实现车牌识别的示例代码
2019/08/05 Python
使用django和vue进行数据交互的方法步骤
2019/11/11 Python
Python 之 Json序列化嵌套类方式
2020/02/27 Python
python 子类调用父类的构造函数实例
2020/03/12 Python
Python标准库:内置函数max(iterable, *[, key, default])说明
2020/04/25 Python
python邮件中附加文字、html、图片、附件实现方法
2021/01/04 Python
详解pandas映射与数据转换
2021/01/22 Python
StubHub哥伦比亚:购买和出售您的门票
2016/10/20 全球购物
美国销售第一的智能手机和平板电脑保护壳:OtterBox
2017/12/21 全球购物
花卉与景观设计系大学生求职信
2013/10/01 职场文书
2013年研究生毕业感言
2014/02/06 职场文书
师德师风整改措施
2014/10/24 职场文书
岗位聘任报告
2015/03/02 职场文书
2015年迎新晚会策划书
2015/07/16 职场文书
如何解决.cuda()加载用时很长的问题
2021/05/24 Python