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+JS无限级可伸缩菜单详解(简单易懂)
Jan 02 PHP
PHP删除特定数组内容并且重建数组索引的方法.
Mar 25 PHP
drupal 代码实现URL重写
May 04 PHP
PHP 输出URL的快捷方式示例代码
Sep 22 PHP
详解PHP中strlen和mb_strlen函数的区别
Mar 07 PHP
php实现数组筛选奇数和偶数示例
Apr 11 PHP
在PHP中使用X-SendFile头让文件下载更快
Jun 01 PHP
thinkPHP3.2简单实现文件上传的方法
May 16 PHP
解决微信授权回调页面域名只能设置一个的问题
Dec 11 PHP
PHP中关键字interface和implements详解
Jun 14 PHP
yii2中LinkPager增加总页数和总记录数的实例
Aug 28 PHP
PHP mongodb操作类定义与用法示例【适合mongodb2.x和mongodb3.x】
Jun 16 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
Thinkphp使用mongodb数据库实现多条件查询方法
2014/06/26 PHP
php使用fgetcsv读取csv文件出现乱码的解决方法
2014/11/08 PHP
Aster vs Newbee BO3 第三场2.18
2021/03/10 DOTA
在 IE 中调用 javascript 打开 Excel 表
2006/12/21 Javascript
jQuery 核心函数以及jQuery对象
2010/03/23 Javascript
js前台分页显示后端JAVA数据响应
2013/03/18 Javascript
Javascript学习指南
2014/12/01 Javascript
JavaScript使用ActiveXObject访问Access和SQL Server数据库
2015/04/02 Javascript
关于延迟加载JavaScript
2015/05/05 Javascript
AngularJS中$watch和$timeout的使用示例
2016/09/20 Javascript
JS正则表达式验证中文字符
2017/05/08 Javascript
Node.js学习教程之HTTP/2服务器推送【译】
2017/10/31 Javascript
微信小程序实战篇之购物车的实现代码示例
2017/11/30 Javascript
JS 数组随机洗牌的实例代码
2018/09/12 Javascript
vue中导出Excel表格的实现代码
2018/10/18 Javascript
JS数组Object.keys()方法的使用示例
2019/06/05 Javascript
微信小程序之高德地图多点路线规划过程示例详解
2021/01/18 Javascript
Python操作MySQL简单实现方法
2015/01/26 Python
使用Python编写Linux系统守护进程实例
2015/02/03 Python
使用python编写简单的小程序编译成exe跑在win10上
2018/01/15 Python
Python实现的求解最小公倍数算法示例
2018/05/03 Python
使用pandas对两个dataframe进行join的实例
2018/06/08 Python
Python使用pandas处理CSV文件的实例讲解
2018/06/22 Python
python 实现图片旋转 上下左右 180度旋转的示例
2019/01/24 Python
Pycharm中出现ImportError:DLL load failed:找不到指定模块的解决方法
2019/09/17 Python
TensorFlow内存管理bfc算法实例
2020/02/03 Python
PySide2出现“ImportError: DLL load failed: 找不到指定的模块”的问题及解决方法
2020/06/10 Python
Troy-Bilt官网:草坪割草机、吹雪机、分蘖机等
2019/02/19 全球购物
short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
2014/09/26 面试题
儿科护士实习自我鉴定
2013/10/17 职场文书
酒后驾驶检讨书
2014/01/27 职场文书
敬老院标语
2014/06/27 职场文书
教师评职称工作总结2015
2015/04/20 职场文书
2015年女职工工作总结
2015/05/15 职场文书
pytorch显存一直变大的解决方案
2021/04/08 Python
德生TECSUN S-2000使用手册文字版
2022/05/10 无线电