-
Version support for PHP is as follows
- Version 3.2 supports PHP 5.6, 5.5, and 5.4
- Version 3.1 supports PHP 5.5 and 5.4
- Version 3.0 supports PHP 5.4.
- Versions 3.2 and 3.1 of the driver require Microsoft ODBC Driver 11 (or higher). You can download the Microsoft ODBC Driver 11 for SQL Server from the Microsoft? ODBC Driver 11 for SQL Server? - Windows page.
- Version 3.0 requires the x86 version of Microsoft SQL Server 2012 Native Client.
- Version 2.0 requires the x86 version of Microsoft SQL Server 2008 R2 Native Client.
以下是官方提供的API函数列表及说明,函数名链接到官网查看demo!列表中粗字体函数是常用的。
| 函数 | 说明 |
|---|---|
|
sqlsrv_begin_transaction |
开始事务。 |
|
sqlsrv_cancel |
取消语句;并放弃相应语句的所有未决结果。 |
|
sqlsrv_client_info |
提供有关客户端的信息。 |
|
sqlsrv_close |
关闭连接。释放与相应连接关联的所有资源。 |
|
sqlsrv_commit |
提交事务。 |
|
sqlsrv_configure |
更改错误处理和日志记录配置。 |
|
sqlsrv_connect |
创建一个连接,并将其打开。 |
|
sqlsrv_errors |
返回关于上一操作的错误和/或警告信息。 |
|
sqlsrv_execute |
执行预定义语句。 |
|
sqlsrv_fetch |
使下一行的数据可供读取。 |
|
sqlsrv_fetch_array |
以数值索引数组、关联数组或这两种数组的形式检索下一行的数据。 |
|
sqlsrv_fetch_object |
以对象形式检索下一行的数据。 |
|
sqlsrv_field_metadata |
返回字段元数据。 |
|
sqlsrv_free_stmt |
关闭语句。释放与相应语句关联的所有资源。 |
|
sqlsrv_get_config |
返回指定配置设置的值。 |
|
sqlsrv_get_field |
按索引检索当前行中的字段。可以指定 PHP 返回类型。 |
|
sqlsrv_has_rows |
检测结果集是否具有一行或多行。 |
|
sqlsrv_next_result |
使下一结果可供处理。 |
|
sqlsrv_num_rows |
报告结果集中的行数。 |
|
sqlsrv_num_fields |
检索活动结果集中的字段数。 |
|
sqlsrv_prepare |
准备 Transact-SQL 查询,但不执行该查询。隐式绑定参数。 |
|
sqlsrv_query |
准备 Transact-SQL 查询,并将其执行。 |
|
sqlsrv_rollback |
回滚事务。 |
|
sqlsrv_rows_affected |
返回有所修改的行的数目。 |
|
sqlsrv_send_stream_data |
在每次调用函数时向服务器发送最多八千字节 (8 KB) 的数据。 |
|
sqlsrv_server_info |
提供有关服务器的信息。 |
$MSSQL_SERVER="localhost"; $connectionInfo = array( "Database"=>"DBNAME", "UID"=>"sa", "PWD"=>"123456");
/*********************/
/* */
/* Version : 5.1.0 */
/* Author : RM */
/* Comment : ms_conn.php */
/* */
/*********************/
//MSSQL连接部分
function open_mssqlconn( )
{
global $mssql_connection;
include_once( "oa_config.php" );
if (!$mssql_connection){
$mssql_link=sqlsrv_connect( $MSSQL_SERVER, $connectionInfo);
if (!$mssql_link){
echo "Could not connect.\n";
die( print_r( sqlsrv_errors(), true));
}
return $mssql_link;
} else {
return $mssql_connection;
}
}
//SQL查询
function mssqlquery($Q)
{
if (!$mssql_connection){
$mssql_connection=open_mssqlconn();
}
$cursor=sqlsrv_query($mssql_connection,$Q);
if ( !$cursor )
{
echo "SQL查询出错.\n";
die( print_r( sqlsrv_errors(), true));
}
return $cursor;
}
//执行SQL
function mssqlexec($Q){
$stmt = sqlsrv_prepare( $mssql_connection, $Q);
if( $stmt===false )
{
echo "SQL预编译出错.\n";
return false;
die( print_r( sqlsrv_errors(), true));
}
/* Execute the statement. Display any errors that occur. */
if( sqlsrv_execute( $stmt)===false)
{
echo "执行SQL出错.\n";
return false;
die( print_r( sqlsrv_errors(), true));
}
/* Free the statement and connection resources. */
sqlsrv_free_stmt($stmt);
return true;
}
if (!$mssql_connection)
{
$mssql_connection=open_mssqlconn();
}调用写封装好的方法:
//获取存货名称
public function getcinvname(){
$cinvcode=iconv("UTF-8","GBK", $_POST["cinvcode"]);
$query="select cinvname from inventory where cinvcode='{$cinvcode}'";
$cursor=mssqlquery($query);
$cinvname='';
while($ROW=sqlsrv_fetch_array($cursor,SQLSRV_FETCH_ASSOC)){
$cinvname=iconv("GBK","UTF-8",$ROW["cinvname"]);
}
sqlsrv_free_stmt($cursor);
$this->returnajax(0,$cinvname);
} 版权声明:本文为博主原创文章,未经博主允许不得转载。
php调用SQL SERVER 2008及以上版本的方法
标签: