php+sqlserver之如何操作sqlserver数据库

Posted 我的学习笔记

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php+sqlserver之如何操作sqlserver数据库相关的知识,希望对你有一定的参考价值。

 

https://blog.csdn.net/xia13100004562/article/details/58598872

2016年12月19日 17:15:39

前面已经基本配置了sqlserver的环境,现在就用学习一下如何去操作数据库!!其实方法还是比较简单,可以参考一下mysql,尽量去跟mysql进行比较

1、学习的方法,最好是看手册 
在前一篇文章中涉及到了连接数据库sqlsrv_connect();还记得我们mysql连接数据库的时候也是mysql_connect();两者操作数据库是很相似的。从零基础开始学起的话,只能是查阅手册。查看一下sqlsrv有哪些函数提供我们使用!推荐网址是:http://php.net/manual/zh/index.php 
技术分享图片
技术分享图片
【注意】很多的方法都跟mysql提供的方法很相似,看到后面的函数名就大概知道里面的用法,比如说mysql执行sql语句的时候调用mysql_query();而sqlserver执行sql语句的时候调用也是sqlsrv_query(),但是特别注意一点就是,它们的传递参数不一样。详细的只能看一下手册。接下来我简单总结一下操作数据的方法 

2、连接数据库sqlsrv_connect()

<?php
$serverName = "serverNamesqlexpress";//服务器的名字,本地localhost
$connectionInfo = array( "Database"=>"dbName", "UID"=>"userName", "PWD"=>"password");
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn ) {
     echo "Connection established.<br />";
}else{
     echo "Connection could not be established.<br />";
     die( print_r( sqlsrv_errors(), true));
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

3、操作数据库 
1)执行sql语句sqlsrv_query(),返回值为true或者false,这里函数的用法跟mysql_query(),不一样。它需要把连接的资源句柄当作参数传进去,看源码。资源句柄就是上面代码连接数据库的“$conn”。

$sql = "select * from test1";   //sql语句
$data = sqlsrv_query($conn,$sql);  //$conn资源句柄
if($data == true){
    die("执行成功");
}else{
    die("执行失败");
    }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

2)获取结果集

//以数值索引数组、关联数组或这两种数组的形式检索下一行的数据。类似于mysql_fetch_array
sqlsrv_fetch_array  
//以对象形式检索下一行的数据。
sqlsrv_fetch_object 
  • 1
  • 2
  • 3
  • 4
$sql = "select * from test1";
$data = sqlsrv_query($conn,$sql);
if($data == true){
    while($row = sqlsrv_fetch_array( $data, SQLSRV_FETCH_ASSOC) ) {
          echo $row[‘id‘].", ".$row[‘name‘]."<br />";
    }else{
         die( print_r( sqlsrv_errors(), true));
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
$sql = "SELECT fName, lName FROM Table_1";
$stmt = sqlsrv_query( $conn, $sql);
if( $stmt === false ) {
     die( print_r( sqlsrv_errors(), true));
}
while( $obj = sqlsrv_fetch_object( $stmt)) {
      echo $obj->fName.", ".$obj->lName."<br />";
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

3)显示错误信息sqlsrv_errors():上面都有用到这个函数,只要是操作数据库发生错误,都可以使用这个函数打印出来看一下压 
这里就不用上代码了

有空的时候会补上,不全,没时间







以上是关于php+sqlserver之如何操作sqlserver数据库的主要内容,如果未能解决你的问题,请参考以下文章

sqlserve条件增加看不到的方法

关于sqlserve2000和sqlserver2005以后版本配置连接池的一些思路

sqlserve复制

SQL之用户自定义函数

SQL之用户自定义函数

php sqlserve 扩展安装后仍不到扩展问题