[简约webapi]php连接mssqlserver的五种方法总结(代码片段)

landv landv     2023-04-30     617

关键词:

参考了下php官方手册总结了五种PHP连接MSsql server的方法,mssql_系列函数,sqlsrv_系列函数,odbc方式连接sqlserver,PDO方式连接sqlserver,COM方式连接

 

参考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。如下图所示:

技术图片

 

 并且安装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
$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 />"; 
?>

 

 

 

wordpress简约mkblog博客主题模板v2.1

正文:WordPress简约mkBlog博客主题模板v2.1,支持WordPress5.4.2+,PHP5.6+(支持PHP7+),兼容IE9+所有主流浏览器。模板特色:极简响应式前端界面,手机、平板和电脑浏览自适应pjax页面无新加... 查看详情

wordpress简约mkblog博客主题模板v2.1

正文:WordPress简约mkBlog博客主题模板v2.1,支持WordPress5.4.2+,PHP5.6+(支持PHP7+),兼容IE9+所有主流浏览器。模板特色:极简响应式前端界面,手机、平板和电脑浏览自适应pjax页面无新加... 查看详情

localhost 在 Webapi 操作中拒绝连接

】localhost在Webapi操作中拒绝连接【英文标题】:localhostrefusedtoconnectinWebapioperation【发布时间】:2017-08-1800:15:21【问题描述】:我创建了WebApi项目并包含示例Get方法。当我尝试从Firefox/Chrome浏览器使用url(http://localhost:port/api/video)访... 查看详情

[webapi]appsettings.json数据库连接

1.编辑AppSettings.JsonWebApi项目中的AppSettings.Json,笔者学习时在实体库新建一个json文件读取不到"ConnectionStrings":"DefaultConnection":"DataSource=.;InitialCatalog=DataBaseName;UserId=UserName; 查看详情

在基于mvc的web项目中使用webapi和直接连接两种方式混合式接入

...开发框架中,其界面是基于Winform的实现方式,后台使用WebAPI、WCF服务以及直接连接数据库的几种方式混合式接入,在Web项目中我们也可以采用这种方式实现混合式的接入方式,虽然WebAPI或者WCF方式的调用,相对直接连接数据库... 查看详情

springboot:一个简约的网盘系统之依赖的导入及yml的配置

1.pom.xml添加依赖,这里我需要引入MyBatis、pagehelper(分页插件)、druid(连接池)、log4j(日志)、fastjson(java对象与JSON互转)、FTP(上传下载)、mail(邮件任务)等<!--引入Lombok--><dependency><groupId>org.projectlombok</gr... 查看详情

企业网站制作要以简约为主

...品牌是做什么的。比如使用一些与风格相匹配的图标,为简约的网页加添了一些个性,而企业网站制作要以简约的方向为主!  简约风格的网站为啥会受到客户青睐,极简主义下的乔布斯给苹果的每个产品注入了简约的灵魂,... 查看详情

简约至上

产品经理作为规划管理者,领导跨职能团队实现产品的战略目标。    查看详情

简约高效基层管理体制

构建简约高效的基层管理体制,包含两个基本层面。一个是基层机构拥有了更多自主权,有助于施展“拳脚”,在管理本地区事务时更有动力和激情。另一个是权责统一,自主权更多了,责任也更大了,惟有善用权力,建立简约... 查看详情

《简约至上》阅读整理

   《简约至上》是产品理论整理基础上的第一本完整阅读资料,算是产品生涯上的一个flag。如图所示,是《简约至上》的导图整理。一、简约至上的主要内容1,什么是简单    简单不等于极简主义,更好的理... 查看详情

htmlbootstrap简约手风琴(代码片段)

查看详情

到 Web Api 的动态连接字符串

】到WebApi的动态连接字符串【英文标题】:DynamicconnectionstringtoWebApi【发布时间】:2015-08-0421:55:59【问题描述】:我正在通过webapi公开我的存储库操作。存储库已使用实体框架和工作单元模式实现。我有同一个数据库的许多实例... 查看详情

Android推送通知最简约的选项

】Android推送通知最简约的选项【英文标题】:ThemostminimalisticoptionforAndroidPushNotification【发布时间】:2015-09-1813:57:57【问题描述】:我已经尝试了来自不同服务(例如Parse)的多个指南,以在我的Android应用中实现PushNotificaiton,但... 查看详情

ini简约的apache配置(代码片段)

查看详情

简约至上

首先对于书的内容和排版设计都符合“简约“的设计:左边文字右边图片条理清晰,取例于生活之中,阅读起来不枯燥又易懂,让用户觉得简单快乐。作者的理论和实践结合的很完美,不得不说:这书你值得拥有!看完这本书,... 查看详情

适合设为ide的背景图片,简约,氛围感拉满

AndroidStudioPyCharm 查看详情

一个应用程序突然无法再连接到数据库。其他应用程序连接正常

...产2年,没有任何变化并且一直有效。我使用的是C#2010和MSSQLServ 查看详情

创建一个基于 MSHTML 的简约窗口

】创建一个基于MSHTML的简约窗口【英文标题】:CreatingaminimalisticMSHTML-basedwindow【发布时间】:2011-05-2013:01:48【问题描述】:我有一个Haskell库,它可以获取一个普通的Web应用程序,在本地服务器上运行它,然后使用QtWebkit打开一个... 查看详情