至于php连接mssql2008的方法可以参考我博客的其他文章会有介绍
操作的话
我们可以先阅读下载的插件内的帮助文件,里面写的很详细可惜是英文的
也可以在线获取手册,有中文的很方便地址是
http://technet.microsoft.com/zh-cn/library/hh352126(SQL.10).aspx
http://msdn.microsoft.com/zh-cn/library/hh352126(v=SQL.10).aspx
下面写我的一个简单的测试
基本的功能都有了
包括連接數據庫 執行SQL 獲取記錄數和內容 獲取字段數和內容
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=big5" /> <title>php-sql2008</title> </head> <body> <?php $serverName = "(local)"; //資料庫伺服器位址 $uid = "sa"; //資料庫用戶名 $pwd = "Admin777"; //資料庫密碼 $db_name="DB_FMDISP"; //資料庫名 $connectionInfo = array("UID"=>$uid, "PWD"=>$pwd, "Database"=>$db_name); $conn = sqlsrv_connect( $serverName, $connectionInfo); if( $conn == false) { echo "Connect error!"; die( print_r( sqlsrv_errors(), true)); } //執行sql語句 $stmt = sqlsrv_query($conn, "SELECT TOP 1000 [uid],[uname],[upwd],[udate],[enable] FROM [DB_FMDISP].[dbo].[tb_user]", array(), array( "Scrollable" => SQLSRV_CURSOR_KEYSET )); if($stmt === false ) { echo "Error in executing query.</br>"; die( print_r( sqlsrv_errors(), true)); } //獲取記錄數 $row_count = sqlsrv_num_rows($stmt); if ($row_count === false){ echo "\nget row error\n".'<br />'; print_r(sqlsrv_errors(), true); } else if ($row_count >=0){ echo '行數:'."\n$row_count\n".'<br />'; } //獲取列數 $field_count = sqlsrv_num_fields($stmt); if ($field_count === false){ echo "\nget row error\n".'<br />'; print_r(sqlsrv_errors(), true); } else if ($field_count >=0){ echo '列數:'."\n$field_count\n".'<br />'; } //獲取某一列的記錄內容(按數字) /* Make the first row of the result set available for reading. */ if( sqlsrv_fetch( $stmt ) === false ) { echo "Error in retrieving row.\n"; die( print_r( sqlsrv_errors(), true)); } $name = sqlsrv_get_field( $stmt, 0); echo '內容:'."$name:".'<br />'; //show the data //把記錄賦給數組並顯示(按列的名稱) while($row = sqlsrv_fetch_array($stmt)){ echo $row['uid']."-----".$row['uname']."-----".$row['upwd']."<br/>"; } /* Free statement and connection resources. */ sqlsrv_free_stmt($stmt); sqlsrv_close($conn); ?> <p></p> <h1>常用SQL語句</h1> $stmt = sqlsrv_query($conn, "INSERT INTO DB_FMDISP.dbo.tb_user(uname,upwd,udate,enable) VALUES('name','pwd','2010-10-10 10:10:00',1)"); $stmt = sqlsrv_query($conn, "SELECT * FROM DB_FMDISP.dbo.tb_user"); </body> </html>
API参考 (SQL Server Driver for PHP)
用于 SQL Server Driver for PHP 的 API 名称是sqlsrv。所有sqlsrv函数都以sqlsrv_打头,后跟动词或名词。后跟动词的函数用于执行特定操作,而后跟名词的函数用于返回特定形式的元数据。
SQL Server Driver for PHP 包含以下函数:
函数 | 说明 |
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 | 提供有关服务器的信息。 |