Azure SQL 数据库和 Azure SQL 托管实例连接和查询文章

适用于: Azure SQL 数据库 Azure SQL 托管实例

以下文档包含 Azure 示例的链接,演示如何连接和查询 Azure SQL 数据库以及 Azure SQL 托管实例。 有关传输级别安全性的相关建议,请参阅数据库连接的 TLS 注意事项

快速入门

快速入门 说明
SQL Server Management Studio 本快速入门演示如何使用 SSMS 连接到数据库,并使用 Transact-SQL 语句在数据库中查询、插入、更新和删除数据。
Azure Data Studio 本快速入门演示如何使用 Azure Data Studio 连接到数据库,然后使用 Transact-SQL (T-SQL) 语句创建在 Azure Data Studio 教程中使用的 TutorialDB。
Azure 门户 本快速入门演示如何使用查询编辑器连接到数据库(仅限 Azure SQL 数据库),然后使用 Transact-SQL 语句在数据库中查询、插入、更新和删除数据。
Visual Studio Code 本快速入门演示如何使用 Visual Studio Code 连接到数据库,并使用 Transact-SQL 语句在数据库中查询、插入、更新和删除数据。
将 .NET 与 Visual Studio 配合使用 本快速入门演示如何使用 .NET framework 与 Visual Studio 来创建连接到数据库的 C# 程序,并使用 Transact-SQL 语句查询数据。
.NET Core 本快速入门演示如何在 Windows/Linux/macOS 中使用 .NET Core 创建连接到数据库的 C# 程序,并使用 Transact-SQL 语句查询数据。
Go 本快速入门演示如何使用 Go 连接到数据库。 此外演示了用于查询和修改数据的 Transact-SQL 语句。
Java 本快速入门演示如何使用 Java 连接到数据库,并使用 Transact-SQL 语句查询数据。
Node.js 本快速入门演示如何使用 Node.js 创建连接到数据库的程序,并使用 Transact-SQL 语句查询数据。
PHP 本快速入门演示如何使用 PHP 创建连接到数据库的程序,并使用 Transact-SQL 语句来查询数据。
Python 本快速入门演示如何使用 Python 连接到 Azure SQL 数据库,并使用 Transact-SQL 语句查询数据。
Ruby 本快速入门演示如何使用 Ruby 创建连接到数据库的程序,并使用 Transact-SQL 语句查询数据。

获取服务器连接信息

获取连接到 Azure SQL 数据库中的数据库所需的连接信息。 在后续过程中,将需要完全限定的服务器名称或主机名称、数据库名称和登录信息。

  1. 登录 Azure 门户

  2. 导航到“SQL 数据库”或“SQL 托管实例”页 。

  3. 在“概述”页上,在“Server 名称”旁查看 Azure SQL 数据库中的数据库的完全限定服务器名称,或在“Host”旁边查看 Azure VM 上 Azure SQL 托管实例中或 SQL Server 的完全限定服务器名称(或 IP 地址) 。 若要复制服务器名称或主机名称,请将鼠标悬停在其上方,然后选择“复制”图标。

备注

有关 Azure VM 上的 SQL Server 的连接信息,请参阅连接到 SQL Server 实例

获取 ADO.NET 连接信息(可选 - 仅限 SQL 数据库)

  1. 导航到 Azure 门户中的“数据库”边栏选项卡,在“设置”下选择“连接字符串” 。

  2. 查看完整的 ADO.NET 连接字符串。

    ADO.NET 连接字符串

  3. 如果想要使用 ADO.NET 连接字符串,请复制它。

数据库连接的 TLS 注意事项

Azure 提供或支持的所有驱动程序使用传输层安全性 (TLS) 连接到 Azure SQL 数据库或 Azure SQL 托管实例中的数据库。 无需特殊配置。 对于到 SQL Server 实例、Azure SQL 数据库中的数据库,或 Azure SQL 托管实例的实例的所有连接,我们建议所有应用程序设置以下配置或其等效项:

  • Encrypt = On
  • TrustServerCertificate = Off

某些系统对于这些配置关键字使用不同但等效的关键字。 这些配置可确保客户端驱动程序验证从服务器收到的 TLS 证书的标识。

如果需要符合支付卡行业 - 数据安全标准 (PCI-DSS),我们还建议你在客户端上禁用 TLS 1.1 和 1.0。

默认情况下,非 Microsoft 驱动程序可能不会使用 TLS。 连接到 Azure SQL 数据库或 Azure SQL 托管实例时,这可能是一个因素。 使用嵌入式驱动程序的应用程序可能不允许你控制这些连接设置。 我们建议你在与敏感数据进行交互的系统上使用此类驱动程序和应用程序之前,检查这些程序的安全性。

驱动程序

如果要连接到 Azure SQL 数据库,建议使用以下最低版本的工具和驱动程序:

驱动程序/工具 版本
.NET framework 4.6.1(或 .NET Core)
ODBC 驱动程序 v17
PHP 驱动程序 5.2.0
JDBC 驱动程序 6.4.0
Node.js 驱动程序 2.1.1
OLEDB 驱动程序 18.0.2.0
SMO 150 或更高版本

可以使用各种库和框架连接到 Azure SQL 数据库或 Azure SQL 托管实例。 请查看快速入门教程,了解 C#、Java、Node.js、PHP、Python 等编程语言的快速入门方式。 然后使用基于 Linux 或 Windows 的 SQL Server 或基于 macOS 的 Docker 生成一个应用。

下表列出的连接库或驱动程序可供客户端应用程序用于通过多种语言连接到在本地或云中运行的 SQL Server 并使用该 SQL Server。 可以在 Linux、Windows 或 Docker 上使用它们,并将其用于连接到 Azure SQL 数据库、Azure SQL 托管实例和 Azure Synapse Analytics。

语言 平台 其他资源 下载 入门
C# Windows、Linux、macOS 用于 SQL Server 的 Microsoft ADO.NET 下载 入门
Java Windows、Linux、macOS 用于 SQL Server 的 Microsoft JDBC 驱动程序 下载 入门
PHP Windows、Linux、macOS 用于 SQL Server 的 PHP SQL 驱动程序 下载 入门
Node.js Windows、Linux、macOS 用于 SQL Server 的 Node.js 驱动程序 安装 入门
Python Windows、Linux、macOS Python SQL 驱动程序 安装选项:
* pymssql
* pyodbc
入门
Ruby Windows、Linux、macOS 用于 SQL Server 的 Ruby 驱动程序 安装 入门
C++ Windows、Linux、macOS 用于 SQL Server 的 Microsoft ODBC 驱动程序 下载

数据访问框架

下表列出了客户端应用程序可以与 SQL Server、Azure SQL 数据库、Azure SQL 托管实例或 Azure Synapse Analytics 一起使用的对象关系映射 (ORM) 框架和 Web 框架的示例。 可以在 Linux、Windows 或 Docker 上使用这些框架。

语言 平台 ORM
C# Windows、Linux、macOS 实体框架
Entity Framework Core
Java Windows、Linux、macOS Hibernate ORM
PHP Windows、Linux、macOS Laravel (Eloquent)
Doctrine
Node.js Windows、Linux、macOS Sequelize ORM
Python Windows、Linux、macOS Django
Ruby Windows、Linux、macOS Ruby on Rails

后续步骤