0

0

php 连接MSSQL的方法

怪我咯

怪我咯

发布时间:2017-07-12 15:54:56

|

7405人浏览过

|

来源于php中文网

原创

ms sql是指微软的sqlserver数据库服务器,它是一个数据库平台,提供数据库的从服务器到终端的完整的解决方案,其中数据库服务器部分,是一个数据库管理系统,用于建立、使用和维护数据库。sql server一开始并不是微软自己研发的产品,而是当时为了要和ibm竞争时,与sybase合作所产生的,其最早的发展者是sybase,同时微软也和sybase合作过 sql server 4.2版本的研发,微软亦将sql server 4.2移植到windows nt(当时为3.1版),在与sybase终止合作关系后,自力开发出sql server 6.0版,往后的sql server即均由微软自行研发。

这篇文章主要为大家详细汇总了PHP连接MSSQL的实现方法,帮助大家更好的实现PHP与MSSQL的连接,感兴趣的小伙伴们可以参考一下

 为了能让PHP连接MSSQL,系统需要安装MSSQL,PHP,且在PHP.ini中的配置中,将 ;extension=php_mssql.dll前面的;去掉

1.连接MSSQL

  $conn=mssql_connect("实例名或者服务器IP","用户名","密码");

  //测试连接
  if($conn)
  {
  echo "连接成功";
  }

2.选择要连接的数据库      

立即学习PHP免费学习笔记(深入)”;

 mssql_select_db("dbname");

3.执行查询

$rs = mssql_query("select top 1 id,username from tbname",$conn);
// 或者直接执行update,insert等语句,可以不用为返回结果赋值
mssql_query("update tbname set username='niunv' where id=1");

 4.获取记录集行数      

 echo mssql_num_rows($rs);

5.获取记录集     

 if($row=mssql_fetch_array($rs))
  {
  $id = $row[0];//获取ID字段值
  $username = $row[1];//获取username字段值
  }

6.获取新增记录的ID
       将id字段设置为IDENTITY字段,执行insert语句以后,就会产生一个 @@IDENTITY 全局变量值,查询出来就是最后一条新增记录的ID了.

  mssql_query("insert into tbname(username) values ('nv')",$conn); 
  $rs = mssql_query("select @@IDENTITY as id",$conn);
  if($row=mssql_fetch_array($rs))
  {
  echo $row[0];
  }

7.释放记录集    

ecshop
ecshop

本版本全面兼容php5.6+,并且修复了许多官方程序的低级代码bug。在apache 2.4.17+php5.6.15环境下测试通过,人格保证无毒无木马,仅仅是一名ecshop热爱者心血来潮之作。ecshop编译更新日志:1、加入最新官方补丁。2、修改数据库连接底层为mysqli, 现在完美无缺了。3、再次对所有代码进行细节修复。4、adminers更新至1.1.2, 在线管理数据库的神器。5、测

下载
 mssql_free_result($rs);

 8.关闭连接    

 mssql_close($conn);

       注:用PHP操作MSSQL比在ASP连接MYSQL要简单,所以,当需要MSSQL与MYSQL并存时,用PHP连接MSSQL来操作MYSQL与MSSQL并存比较简单好用.如果是ASP连接MYSQL,需要安装一个MYSQL驱动,默认windows的ODBC没有安装,很遗憾...   

  •   在web服务器上至少安装了mssql的客户端    

  •   打开php.ini把;extension=php_mssql.dll   前面的分号去掉  

  •       有必要话:需要制定extension_dir  

  •   推荐使用   php

  •   数据库的 连接分页可以到phpe.net上获取到相应的class   

  下面是我修改的 一个class   

 server = $Server; 
 $this->userName = $UserName; 
 $this->passWord = $PassWord; 
 $this->dataBase = $DataBase; 
 } 
 /** 
 *数据库连接 
 **/ 
 function db_connect(){ 
 $this->linkID = mssql_pconnect($this->server,$this->userName,$this->passWord); 
 if(!$this->linkID){ 
 $this->ER = "db_connect($this->server,$this->userName,$this->passWord) error"; 
 return 0; 
 } 
 if (!mssql_select_db($this->dataBase,$this->linkID)) { 
 $this->ER = "mssql_select_db($this->dataBase,$this->lastInsertID) error"; 
 return 0; 
 } 
 return $this->linkID; 
 } 
 
 /**public 
 *  function: Check the database, if exist then select 
 *  exist: return 1 
 *  not exist: return 0 
 */ 
 function selectDatabase(){ 
 if(mssql_select_db($this->dataBase)) 
 return 1; 
 else 
 return 0; 
 } 
 
 /** 
 *数据操作 
 **/ 
 function  query($Str){ 
 if ($this->linkID == 0) { 
 $this->ER = "数据库还没有连接!!"; 
 } 
 
    $this->queryResult = mssql_query($Str);  
 //$this->queryResult = mssql_query($Str,$this->linkID); 
 if (!$this->queryResult) { 
  
 
 $this->ER = "$Str.没有操作成功,query error!!"; 
 return 0;//****************对于php 4.3.9以上版本的错误用1 
 } 
 return $this->queryResult; 
 } 
 
 /** 
 *数据获取 
 **/ 
 function fetch_array($result){ 
 if($result != "") $this->queryResult = $result; 
 $rec =mssql_fetch_array($this->queryResult); 
 
 if(is_array($rec)){ 
 return $rec; 
 
 } 
 
 //$this->ER = "没有获取数据!"; 
 return 0; 
 } 
 
 /**public 
 *  function: Free the Query Result 
 *  success return 1 
 *  failed: return 0 
 */ 
 function freeResult($result=""){ 
 if($result != "") $this->queryResult = $result; 
 return mssql_free_result($this->queryResult); 
 } 
   
 /** 
 *获取影响的的行数 
 *获取操作过的行数 
 **/ 
 function num_rows($result=""){ 
 if ($result != "") { 
 $this->queryResult = $result; 
 $row = mssql_num_rows($this->queryResult); 
 return $row; 
 } 
 } 
   
 /** 
 *获取查询结果---多个 
 **/ 
 function result_ar($str=''){ 
 if (empty($str)) { 
 return 0; 
 } 
 $back = array(); 
 $this->queryResult = $this->query($str); 
 
 while ($row = $this->fetch_array($this->queryResult)) { 
 $back[] = $row; 
 } 
 return $back; 
 } 
 
 /** 
 *数据库信息分页 
 *$Result 数据库操作 
 *str ==sql语句  
 *page ==第几页 
 *showNum ==显示几页 
 */ 
 function page($Str,$Page=0,$ShowNum=5){ 
 $back = array();//返回数据 
 $maxNum = 0; 
 if ($Str == "") { 
 $this->ER = "没有数据"; 
 return  0; 
 } 
 $this->queryResult = $this->query($Str); 
 if($this->queryResult){ 
 if($Page==""){ 
 $nopa=0; 
 }else{ 
 $nopa = ($Page-1)*$ShowNum; 
 if ($nopa<0) { 
 $nopa = 0; 
 } 
 } 
 $maxNum=$this->num_rows($this->queryResult); 
 $k=0; 
 $i=0; 
 $dd=$this->fetch_array($this->queryResult); 
 
 while($dd&&$nopa<=$maxNum&&$i<$ShowNum){ 
 if($nopa >= $maxNum)  $nopa = $maxNum; 
 mssql_data_seek($this->queryResult,$nopa); 
 
 $row=$this->fetch_array($this->queryResult); 
 
 $nopa++; 
 $i++; 
 $back[] = $row; 
 
 if ($nopa >=$maxNum) { 
 break; 
 } 
 } 
 } 
 $this->pageNum = $maxNum; 
 return $back; 
 } 
 
 /** 
 *分页的html页码 
 */ 
 function  page_html($DataNum=0,$Page=1,$ShowNum=3,$web,$Post=''){ 
 if ($DataNum == 0) { 
 $back =  "没有要查询的数据"; 
 }else { 
 if ($ShowNum<=0) { 
 $ShowNum = 3; 
 } 
 if ($Page<=0) { 
 $Page = 1; 
 } 
 if (empty($web)) { 
 $web = "#"; 
 } 
 $pageNum = ceil($DataNum/$ShowNum); 
 if ($Page <= 1) { 
 $top =  "首页<<"; 
 }else { 
 $top = "首页<< "; 
 } 
 if ($Page !==1) { 
 $upPage =  "上一页"; 
 }else { 
 $upPage = "上一页"; 
 } 
 if ($Page < $pageNum) { 
 $downPage = "下一页"; 
 }else { 
 $downPage = "下一页"; 
 } 
 if ($Page == $pageNum) { 
 $foot = ">>尾页"; 
 }else { 
 $foot = " >>尾页"; 
 } 
 
 $back = <<

相关文章

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

php

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
2026赚钱平台入口大全
2026赚钱平台入口大全

2026年最新赚钱平台入口汇总,涵盖任务众包、内容创作、电商运营、技能变现等多类正规渠道,助你轻松开启副业增收之路。阅读专题下面的文章了解更多详细内容。

54

2026.01.31

高干文在线阅读网站大全
高干文在线阅读网站大全

汇集热门1v1高干文免费阅读资源,涵盖都市言情、京味大院、军旅高干等经典题材,情节紧凑、人物鲜明。阅读专题下面的文章了解更多详细内容。

40

2026.01.31

无需付费的漫画app大全
无需付费的漫画app大全

想找真正免费又无套路的漫画App?本合集精选多款永久免费、资源丰富、无广告干扰的优质漫画应用,涵盖国漫、日漫、韩漫及经典老番,满足各类阅读需求。阅读专题下面的文章了解更多详细内容。

50

2026.01.31

漫画免费在线观看地址大全
漫画免费在线观看地址大全

想找免费又资源丰富的漫画网站?本合集精选2025-2026年热门平台,涵盖国漫、日漫、韩漫等多类型作品,支持高清流畅阅读与离线缓存。阅读专题下面的文章了解更多详细内容。

12

2026.01.31

漫画防走失登陆入口大全
漫画防走失登陆入口大全

2026最新漫画防走失登录入口合集,汇总多个稳定可用网址,助你畅享高清无广告漫画阅读体验。阅读专题下面的文章了解更多详细内容。

13

2026.01.31

php多线程怎么实现
php多线程怎么实现

PHP本身不支持原生多线程,但可通过扩展如pthreads、Swoole或结合多进程、协程等方式实现并发处理。阅读专题下面的文章了解更多详细内容。

1

2026.01.31

php如何运行环境
php如何运行环境

本合集详细介绍PHP运行环境的搭建与配置方法,涵盖Windows、Linux及Mac系统下的安装步骤、常见问题及解决方案。阅读专题下面的文章了解更多详细内容。

0

2026.01.31

php环境变量如何设置
php环境变量如何设置

本合集详细讲解PHP环境变量的设置方法,涵盖Windows、Linux及常见服务器环境配置技巧,助你快速掌握环境变量的正确配置。阅读专题下面的文章了解更多详细内容。

0

2026.01.31

php图片如何上传
php图片如何上传

本合集涵盖PHP图片上传的核心方法、安全处理及常见问题解决方案,适合初学者与进阶开发者。阅读专题下面的文章了解更多详细内容。

2

2026.01.31

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PHP课程
PHP课程

共137课时 | 10.5万人学习

JavaScript ES5基础线上课程教学
JavaScript ES5基础线上课程教学

共6课时 | 11.2万人学习

PHP新手语法线上课程教学
PHP新手语法线上课程教学

共13课时 | 0.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号