介绍
PHP是一种开源的服务器端编程语言,是目前应用最广泛的Web编程语言之一,而MSSQL是 Microsoft SQL Server 的数据库管理系统。
安装SQL Server驱动
1. 驱动下载
在PHP中连接MSSQL数据库需要借助于SQL Server驱动,这个驱动不是PHP自带的需要我们自己去安装或者下载,下载地址为:
https://docs.microsoft.com/en-us/sql/connect/php/microsoft-php-driver-for-sql-server?view=sql-server-2017
2. 驱动安装
根据自己的系统版本下载相应的安装文件进行安装,安装完后需要在php.ini中添加以下信息:
extension=php_sqlsrv_56_ts.dll
extension=php_pdo_sqlsrv_56_ts.dll
extension=php_sqlsrv_56_ts.dll 和 extension=php_pdo_sqlsrv_56_ts.dll 在php\ext目录下可以找到。
连接MSSQL数据库
1. 数据库连接函数
PHP提供了一个用于连接MSSQL数据库的函数,如下所示:
// Connect MSSQL database
$conn = sqlsrv_connect($serverName, $connectionInfo);
sqlsrv_connect()的第一个参数是服务器名称,这个名称是通过“servername\instancename”这种格式指定的。
sqlsrv_connect()的第二个参数是一个可选的数组,用来提供关于数据库的连接信息。 这个数组包含了“Database”的项,这是唯一必须要提供的信息。
2. 数据库连接实例
以下是一个连接MSSQL数据库的示例,包括连接信息数组:
$serverName = "ServerName\InstanceName";
$connectionOptions = array("Database"=>"dbName",
"Uid"=>"username",
"PWD"=>"password");
// Establishes the connection
$conn = sqlsrv_connect($serverName, $connectionOptions);
if ($conn) {
echo "Connection established.";
} else {
echo "Connection could not be established.";
die(print_r(sqlsrv_errors(), true));
}
这个示例中定义了一个连接MSSQL数据库的变量 $serverName、 $connectionInfo,并通过 sqlsrv_connect() 函数来连接数据库。如果连接失败,将打印一个错误信息。
数据库查询
1. 查询语句
查询语句是用来从数据库中检索数据的语句,以下是一个查询语句的示例:
SELECT column1,column2 FROM table_name;
2. 查询示例
以下是一个从MSSQL数据库查询数据的实例,该示例使用 sqlsrv_query() 函数来查询数据:
$tsql= "SELECT * FROM person.ContactType;";
$getResults= sqlsrv_query($conn, $tsql);
if ($getResults == FALSE)
die(FormatErrors(sqlsrv_errors()));
$rows = array();
while ($row = sqlsrv_fetch_array($getResults, SQLSRV_FETCH_ASSOC)) {
$data = array();
array_push($data, $row['ContactTypeID'], $row['Name']);
array_push($rows, $data);
}
echo json_encode($rows);
sqlsrv_free_stmt($getResults);
这个示例查询了 person.ContactType 表的所有列,并将结果转换为一个数组。最后将结果转换为json格式并输出。
关闭数据库连接
当我们完成了对MSSQL数据库的访问后,需要关闭创建的sqlsrv_connect连接,释放与数据库服务器的资源连接,以确保更好的系统性能。要关闭连接,需要使用sqlsrv_close()函数。
关闭连接实例
// Close the connection
sqlsrv_close($conn);
总结
在这篇文章中,我们学习了如何使用PHP连接MSSQL数据库以及如何进行查询操作。同时,我们了解了如何安装sqlsrv驱动,以及如何打开和关闭数据库连接。