SQLx 到 Mssql 连接字符串

SQLx to Mssql connection string

我正在学习 Rust,我已经使用 Rocket 编写了第一个非常简单的 API。现在我想将我的服务器连接到我在 MSFT Azure 上的现有数据库。 我很难找到有关 Mssql 如何工作的示例,SQLx repository 仅包含 Postgres 和 MySQL.

的示例

Azure 门户上没有可用于 rust 的连接字符串,因此我尝试了 Go 和 ODBC 的不同版本:

const SERVER: &str = "<mysqlserver>.database.windows.net";
const PORT: &str = "1433";
const USER: &str  = "sqladmin";
const PASSWORD: &str  = "<mypassword>";
const DATABASE: &str  = "<mydatabase>";

MssqlConnection::connect(&format!("server={};user id={};password={};port={};database={};", SERVER, USER, PASSWORD, PORT, DATABASE)[..]).await?;

这给出了一个 Error: Configuration(RelativeUrlWithoutBase),所以我认为 SQLx 需要一个像 "postgres://..." 这样的连接字符串,但我找不到用于 mssql 的这个字符串。

虽然我仍然无法连接到 Azure 上的 SQL 服务器,但找到正确的连接字符串格式的问题已经解决。 我能够使用以下方法连接到本地服务器:

MssqlConnection::connect("mssql://user:password@server/database").await?;

因此连接字符串遵循与例如相同的模式Postgres,不幸的是 Azure 门户上的示例字符串 none 属于这种类型。

编辑:连接问题很可能是由于缺乏对加密连接的支持,更多详细信息