使用 PHP 查询 Azure SQL 数据库
本快速入门教程演示了如何使用 PHP 来创建连接到 Azure SQL 数据库的程序,并使用 Transact-SQL 语句来查询数据。
先决条件
若要完成本快速入门教程,请确保符合以下条件:
Azure SQL 数据库。 可以使用以下方法之一来创建数据库:
针对用于本快速入门教程的计算机的公共 IP 地址制定服务器级防火墙规则。
已为操作系统安装 PHP 和相关软件:
- MacOS:安装 Homebrew 和 PHP,安装 ODBC 驱动程序和 SQLCMD,再安装用于 SQL Server 的 PHP 驱动程序。 请参阅步骤 1.2、1.3 和 2.1。
- Ubuntu:安装 PHP 和其他所需包,然后安装用于 SQL Server 的 PHP 驱动程序。 请参阅步骤 1.2 和 2.1。
- Windows:安装最新版的 PHP for IIS Express、最新版的 Microsoft Drivers for SQL Server(位于 IIS Express 中)、Chocolatey、ODBC 驱动程序以及 SQLCMD。 请参阅步骤 1.2 和 1.3。
SQL Server 连接信息
获取连接到 Azure SQL 数据库所需的连接信息。 在后续过程中,将需要完全限定的服务器名称、数据库名称和登录信息。
- 登录到 Azure 门户。
- 从左侧菜单中选择“SQL 数据库”,并单击“SQL 数据库”页上的数据库。
在数据库的“概览”页上,查看如下图所示的完全限定的服务器名称。 将鼠标悬停在服务器名称上即可打开“通过单击进行复制”选项。
如果忘了服务器的登录信息,请导航到 SQL 数据库服务器页,以查看服务器管理员名称。 如有必要,请重置密码。
插入用于查询 SQL 数据库的代码
在常用的文本编辑器中,创建一个新文件 sqltest.php。
将内容替换为以下代码,为服务器、数据库、用户和密码添加相应的值。
<?php $serverName = "your_server.database.chinacloudapi.cn"; $connectionOptions = array( "Database" => "your_database", "Uid" => "your_username", "PWD" => "your_password" ); //Establishes the connection $conn = sqlsrv_connect($serverName, $connectionOptions); $tsql= "SELECT TOP 20 pc.Name as CategoryName, p.name as ProductName FROM [SalesLT].[ProductCategory] pc JOIN [SalesLT].[Product] p ON pc.productcategoryid = p.productcategoryid"; $getResults= sqlsrv_query($conn, $tsql); echo ("Reading data from table" . PHP_EOL); if ($getResults == FALSE) echo (sqlsrv_errors()); while ($row = sqlsrv_fetch_array($getResults, SQLSRV_FETCH_ASSOC)) { echo ($row['CategoryName'] . " " . $row['ProductName'] . PHP_EOL); } sqlsrv_free_stmt($getResults); ?>
运行代码
在命令提示符下运行以下命令:
php sqltest.php
验证是否已返回前 20 行,然后关闭应用程序窗口。