适用于:Azure SQL 数据库
Azure SQL 托管实例
本文演示了如何使用 PHP 连接到 Azure SQL 数据库或 Azure SQL 托管实例中的数据库。 然后即可使用 T-SQL 语句来查询数据。
先决条件
若要完成本快速入门,你需要:
具有活动订阅的 Azure 帐户。 创建试用版订阅。
Azure SQL 数据库或 Azure SQL 托管实例中的数据库。 可以根据下述快速入门之一,创建数据库,然后对其进行配置:
行动 SQL 数据库 SQL 托管实例 Azure VM 上的 SQL Server 创建 Portal Portal Portal CLI CLI PowerShell PowerShell PowerShell 配置 服务器级别 IP 防火墙规则 从 VM 进行连接 来自本地的连接 连接到 SQL Server 实例 加载数据 根据快速入门加载的 Wide World 导入程序 还原 Wide World Importers 还原 Wide World Importers 从 GitHub 的一个 BACPAC 文件还原或导入 Adventure Works 从 GitHub 所提供的 BACPAC 文件还原或导入 Adventure Works 重要
编写本文中的脚本是为了使用
AdventureWorks2022
数据库。 使用 SQL 托管实例时,必须将AdventureWorks2022
数据库导入一个实例数据库,或者修改本文中的脚本,以便使用 Wide World Importers 数据库。已为操作系统安装与 PHP 相关的软件:
MacOS,安装 PHP、ODBC 驱动程序,然后安装 PHP Driver for SQL Server。 请参阅步骤 1、2 和 3。
Linux,安装 PHP、ODBC 驱动程序,然后安装 PHP Driver for SQL Server。 请参阅步骤 1、2 和 3。
获取服务器连接信息
获取连接到 Azure SQL 数据库中的数据库所需的连接信息。 在后续过程中,将需要完全限定的服务器名称或主机名称、数据库名称和登录信息。
登录 Azure 门户。
导航到“SQL 数据库”或“SQL 托管实例”页。
在“概述”页上,查看 Azure SQL 数据库中位于Server name旁的完全限定服务器名称,或在 Azure VM 上的 Azure SQL 托管实例或 SQL Server 的Host旁查看完全限定服务器名称(或 IP 地址)。 若要复制服务器名称或主机名称,请将鼠标悬停在其上方,然后选择“复制”图标。
注意
有关 Azure VM 上的 SQL Server 的连接信息,请参阅连接到 SQL Server 实例。
添加用于查询数据库的代码
在喜欢的文本编辑器中,创建新文件 sqltest.php。
将其内容替换为以下代码。 然后,为服务器、数据库、用户和密码添加相应的值。
<?php $serverName = "your_server.database.chinacloudapi.cn"; // update me $connectionOptions = array( "Database" => "your_database", // update me "Uid" => "your_username", // update me "PWD" => "your_password" // update me ); //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 行,然后关闭应用窗口。