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 无限分类三种方式 非函数的递归调用!
Aug 26 PHP
ajax完美实现两个网页 分页功能的实例代码
Apr 16 PHP
php+highchats生成动态统计图
May 21 PHP
PHP遍历数组的三种方法及效率对比分析
Feb 12 PHP
PHP JSON格式的中文显示问题解决方法
Apr 09 PHP
PHP中的命名空间详细介绍
Jul 02 PHP
PHP控制前台弹出对话框的实现方法
Aug 21 PHP
PHP简单检测网址是否能够正常打开的方法
Sep 04 PHP
php函数mkdir实现递归创建层级目录
Oct 27 PHP
php 魔术常量详解及实例代码
Dec 04 PHP
浅谈PHP封装CURL
Mar 06 PHP
php实现的顺序线性表示例
May 04 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约瑟夫问题解决关于处死犯人的算法
2015/03/23 PHP
PHP中CheckBox多选框上传失败的代码写法
2017/02/13 PHP
PHP attributes()函数讲解
2019/02/03 PHP
让innerHTML的脚本也可以运行起来
2006/07/01 Javascript
同一个表单 根据要求递交到不同页面的实现方法小结
2009/08/05 Javascript
js 操作符实例代码
2009/10/24 Javascript
改善你的jQuery的25个步骤 千倍级效率提升
2010/02/11 Javascript
AngularJS包括详解及示例代码
2016/08/17 Javascript
修改Jquery Dialog 位置的实现方法
2016/08/26 Javascript
js判断出两个字符串最大子串的函数实现方法
2016/11/01 Javascript
jQuery插件HighCharts实现的2D堆条状图效果示例【附demo源码下载】
2017/03/14 Javascript
layui前段框架日期控件使用方法详解
2017/05/19 Javascript
Bootstrap Table使用整理(五)之分页组合查询
2017/06/09 Javascript
使用JavaScript实现点击循环切换图片效果
2017/09/03 Javascript
JavaScript+Canvas实现彩色图片转换成黑白图片的方法分析
2018/07/31 Javascript
浅谈angular表单提交中ng-submit的默认使用方法
2018/09/30 Javascript
Node.js net模块功能及事件监听用法分析
2019/01/05 Javascript
JS使用百度地图API自动获取地址和经纬度操作示例
2019/04/16 Javascript
react用Redux中央仓库实现一个todolist
2019/09/29 Javascript
[39:00]Optic vs VP 2018国际邀请赛淘汰赛BO3 第三场 8.24
2018/08/25 DOTA
Python 3.x读写csv文件中数字的方法示例
2017/08/29 Python
python实现神经网络感知器算法
2017/12/20 Python
django 使用全局搜索功能的实例详解
2019/07/18 Python
Python人工智能之路 之PyAudio 实现录音 自动化交互实现问答
2019/08/13 Python
基于python计算并显示日间、星期客流高峰
2020/05/07 Python
Python爬虫scrapy框架Cookie池(微博Cookie池)的使用
2021/01/13 Python
html5 实现客户端验证上传文件的大小(简单实例)
2016/05/15 HTML / CSS
香港最大的洋酒零售连锁店:屈臣氏酒窖(Watson’s Wine)
2018/12/10 全球购物
Fnac西班牙官网:法国文化和电子产品零售商
2021/03/14 全球购物
介绍下Java中==和equals的区别
2013/09/01 面试题
结婚喜宴家长答谢词
2014/01/15 职场文书
主题党日活动总结
2014/07/08 职场文书
个人委托书如何写
2014/09/25 职场文书
单位实习工作证明怎么写
2014/11/02 职场文书
2014个人年度工作总结
2014/12/15 职场文书
安全生产警示教育活动总结
2015/05/09 职场文书