php连接mssql的一些方法总结

为了能让PHP连接MSSQL,系统需要安装MSSQL,PHP,且在PHP.ini中的配置中,将
       ;extension=php_mssql.dll前面的;去掉
       1.连接MSSQL
       $conn=mssql_connect("实例名或者服务器IP","用户名","密码");
       //测试连接
       if($conn)
       {
       echo "连接成功";
       }
       2.选择要连接的数据库
       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.释放记录集
       mssql_free_result($rs);
       8.关闭连接
       mssql_close($conn);
      
       注:用PHP操作MSSQL比在ASP连接MYSQL要简单,所以,当需要MSSQL与MYSQL并存时,用PHP连接MSSQL来操作MYSQL与 MSSQL并存比较简单好用.如果是ASP连接MYSQL,需要安装一个MYSQL驱动,默认windows的ODBC没有安装,很遗憾...
     
     
     
  1.在web服务器上至少安装了mssql的客户端   
  2.打开php.ini把;extension=php_mssql.dll   前面的分号去掉 
        有必要话:需要制定extension_dir 
  3.推荐使用   php<=4.0.9     <=5.0.3目前   我还没有连接成功过4.010和   5.0.3 
  4.数据库的   连接分页可以   到     phpe.net上获取到相应的class 
  下面是我根据那里   修改的   一个class

 
  1. <?php    
  2.     
  3. class    SQL{    
  4.    
  5. var     $server ;    
  6. var     $userName ;    
  7. var     $passWord ;    
  8. var     $dataBase ;    
  9.    
  10. var     $linkID    =   0;    
  11. var     $queryResult ;    
  12. var     $lastInsertID ;    
  13.    
  14. var     $pageNum    =   0; //分页用---共有几条数据    
  15. var     $ER ;    
  16.    
  17.     
  18. function      SQL( $Server = '' , $UserName = '' , $PassWord = '' , $DataBase = '' ){    
  19. $this ->server   =    $Server ;    
  20. $this ->userName   =    $UserName ;    
  21. $this ->passWord   =    $PassWord ;    
  22. $this ->dataBase   =    $DataBase ;    
  23. }    
  24.     
  25. function    db_connect(){    
  26. $this ->linkID   =   mssql_pconnect( $this ->server, $this ->userName, $this ->passWord);    
  27. if (! $this ->linkID){    
  28. $this ->ER   =    "db_connect($this->server,$this->userName,$this->passWord)   error" ;    
  29. return    0;    
  30. }    
  31. if    (!mssql_select_db( $this ->dataBase, $this ->linkID))   {    
  32. $this ->ER   =    "mssql_select_db($this->dataBase,$this->lastInsertID)   error" ;    
  33. return    0;    
  34. }    
  35. return     $this ->linkID;    
  36. }    
  37.    
  38.     
  39. function    selectDatabase(){    
  40. if (mssql_select_db( $this ->dataBase))    
  41. return    1;    
  42. else     
  43. return    0;    
  44. }    
  45.    
  46.     
  47. function      query( $Str ){    
  48. if    ( $this ->linkID   ==   0)   {    
  49. $this ->ER   =    "数据库还没有连接!!" ;    
  50. }    
  51.    
  52.                $this ->queryResult   =   mssql_query( $Str );        
  53. //$this->queryResult   =   mssql_query($Str,$this->linkID);    
  54. if    (! $this ->queryResult)   {    
  55.        
  56.    
  57. $this ->ER   =    "$Str.没有操作成功,query   error!!" ;    
  58. return    0;/    
  59. function    fetch_array( $result ){    
  60. if ( $result    !=    "" )    $this ->queryResult   =    $result ;    
  61. $rec    =mssql_fetch_array( $this ->queryResult);    
  62.    
  63. if ( is_array ( $rec )){    
  64. return     $rec ;    
  65.    
  66. }    
  67.    
  68. //$this->ER   =   "没有获取数据!";    
  69. return    0;    
  70. }    
  71.    
  72.     
  73. function    freeResult( $result = "" ){    
  74. if ( $result    !=    "" )    $this ->queryResult   =    $result ;    
  75. return    mssql_free_result( $this ->queryResult);    
  76. }    
  77.          
  78.     
  79. function    num_rows( $result = "" ){    
  80. if    ( $result    !=    "" )   {    
  81. $this ->queryResult   =    $result ;    
  82. $row    =   mssql_num_rows( $this ->queryResult);    
  83. return     $row ;    
  84. }    
  85. }    
  86.            
  87.     
  88. function    result_ar( $str = '' ){    
  89. if    ( empty empty ( $str ))   {    
  90. return    0;    
  91. }    
  92. $back    =    array ();    
  93. $this ->queryResult   =    $this ->query( $str );    
  94.    
  95. while    ( $row    =    $this ->fetch_array( $this ->queryResult))   {    
  96. $back []   =    $row ;    
  97. }    
  98. return     $back ;    
  99. }    
  100.    
  101.     
  102. function    page( $Str , $Page =0, $ShowNum =5){    
  103. $back    =    array (); //返回数据    
  104. $maxNum    =   0;    
  105. if    ( $Str    ==    "" )   {    
  106. $this ->ER   =    "没有数据" ;    
  107. return      0;    
  108. }    
  109. $this ->queryResult   =    $this ->query( $Str );    
  110. if ( $this ->queryResult){    
  111. if ( $Page == "" ){    
  112. $nopa =0;    
  113. } else {    
  114. $nopa    =   ( $Page -1)* $ShowNum ;    
  115. if    ( $nopa <0)   {    
  116. $nopa    =   0;    
  117. }    
  118. }    
  119. $maxNum = $this ->num_rows( $this ->queryResult);    
  120. $k =0;    
  121. $i =0;    
  122. $dd = $this ->fetch_array( $this ->queryResult);    
  123.    
  124. while ( $dd && $nopa <= $maxNum && $i < $ShowNum ){    
  125. if ( $nopa    >=    $maxNum )      $nopa    =    $maxNum ;    
  126. mssql_data_seek( $this ->queryResult, $nopa );    
  127.    
  128. $row = $this ->fetch_array( $this ->queryResult);    
  129.    
  130. $nopa ++;    
  131. $i ++;    
  132. $back []   =    $row ;    
  133.    
  134. if    ( $nopa    >= $maxNum )   {    
  135. break ;    
  136. }    
  137. }    
  138. }    
  139. $this ->pageNum   =    $maxNum ;    
  140. return     $back ;    
  141. }    
  142.    
  143.     
  144. function      page_html( $DataNum =0, $Page =1, $ShowNum =3, $web , $Post = '' ){    
  145. if    ( $DataNum    ==   0)   {    
  146. $back    =      "没有要查询的数据" ;    
  147. } else    {    
  148. if    ( $ShowNum <=0)   {    
  149. $ShowNum    =   3;    
  150. }    
  151. if    ( $Page <=0)   {    
  152. $Page    =   1;    
  153. }    
  154. if    ( empty empty ( $web ))   {    
  155. $web    =    "#" ;    
  156. }    
  157. $pageNum    =    ceil ( $DataNum / $ShowNum );    
  158. if    ( $Page    <=   1)   {    
  159. $top    =      "首页<<" ;    
  160. } else    {    
  161. $top    =    "<a   href='" . $web . "?page=0&" . $Post . "'   target='_self'>首页<<   </a>" ;    
  162. }    
  163. if    ( $Page    !==1)   {    
  164. $upPage    =      "<a   href='" . $web . "?page=" .( $Page -1). "&" . $Post . "'   target='_self'>上一页</a>" ;    
  165. } else    {    
  166. $upPage    =    "上一页" ;    
  167. }    
  168. if    ( $Page    <    $pageNum )   {    
  169. $downPage    =    "<a   href='" . $web . "?page=" .( $Page +1). "&" . $Post . "'   target='_self'>下一页</a>" ;    
  170. } else    {    
  171. $downPage    =    "下一页" ;    
  172. }    
  173. if    ( $Page    ==    $pageNum )   {    
  174. $foot    =    ">>尾页" ;    
  175. } else    {    
  176. $foot    =    "<a   href='" . $web . "?page=" . $pageNum . "&" . $Post . "'   target='_self'>   >>尾页</a>" ;    
  177. }    
  178.    
  179. $back    =   <<<EOT    
  180.    
  181. 共    $pageNum    页   &nbsp;&nbsp;    
  182. 第    $Page / $pageNum    页    $top    &nbsp;    $upPage    &nbsp;    $downPage      &nbsp;    $foot     
  183. EOT;    
  184. }    
  185. return     $back ;    
  186. }    
  187. } //end   class    
  188. ?> 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值