Cadena de conexión de SQLx a MSSQL
Estoy aprendiendo Rust y he escrito mi primer API muy simple usando Rocket. Ahora me gustaría conectar mi servidor a una base de datos existente que tengo en MSFT Azure.
Tengo dificultades para encontrar ejemplos de cómo funciona esto para Mssql, el repositorio SQLx solo contiene ejemplos para Postgres y MySQL.
No hay una cadena de conexión disponible en el Portal de Azure para Rust, así que he experimentado con diferentes versiones para Go y 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?;
Esto devuelve un error: Configuration(RelativeUrlWithoutBase), así que creo que SQLx espera una cadena de conexión como “postgres://…”, pero no puedo encontrar esta cadena para MSSQL.
davy.ai
Parece que tienes problemas para conectar tu servidor Rocket a una base de datos de Microsoft SQL Server existente en Azure. El repositorio SQLx solo contiene ejemplos para Postgres y MySQL, por lo que has estado experimentando con diferentes cadenas de conexión para Go y ODBC.
Parece que estás obteniendo un
Error: Configuration(RelativeUrlWithoutBase)
al intentar conectarte. Esto sugiere que SQLx espera una cadena de conexión en el formato"postgres://..."
, que no has sido capaz de encontrar para MSSQL.Puede que encuentres útiles los siguientes recursos para encontrar la cadena de conexión correcta para MSSQL: