Introducción al desarrollo de aplicaciones: SQL Database e Instancia administrada de SQLApplication development overview - SQL Database & SQL Managed Instance
Azure SQL Database
Azure Synapse Analytics
Este artículo le lleva por las consideraciones básicas que debe tener en cuenta un desarrollador al escribir código para conectarse a la base de datos en Azure.This article walks through the basic considerations that a developer should be aware of when writing code to connect to your database in Azure. Este artículo se aplica a Azure SQL Database e Instancia administrada de Azure SQL.This article applies to Azure SQL Database, and Azure SQL Managed Instance.
Plataforma y lenguajeLanguage and platform
Puede usar distintas plataformas y lenguajes de programación para conectarse y consultar a Azure SQL Database.You can use various programming languages and platforms to connect and query Azure SQL Database. Puede encontrar aplicaciones de ejemplo que puede usar para conectarse a la base de datos.You can find sample applications that you can use to connect to the database.
Puede aprovechar herramientas de código abierto como cheetah, sql-cli o VS Code.You can leverage open-source tools like cheetah, sql-cli, VS Code. Además, Azure SQL Database funciona con herramientas de Microsoft como Visual Studio y SQL Server Management Studio.Additionally, Azure SQL Database works with Microsoft tools like Visual Studio and SQL Server Management Studio. También puede usar Azure Portal, PowerShell y API REST, que le ayudan a conseguir una mayor productividad.You can also use the Azure portal, PowerShell, and REST APIs help you gain additional productivity.
AuthenticationAuthentication
El acceso a Azure SQL Database está protegido con inicios de sesión y firewalls.Access to Azure SQL Database is protected with logins and firewalls. Azure SQL Database admite inicios de sesión y usuarios de SQL Server y de autenticación de Azure Active Directory.Azure SQL Database supports both SQL Server and Azure Active Directory authentication users and logins. Los inicios de sesión de Azure Active Directory solo están disponibles en Instancia administrada de SQL.Azure Active Directory logins are available only in SQL Managed Instance.
Obtenga más información sobre cómo administrar el acceso e inicio de sesión a bases de datos.Learn more about managing database access and login.
ConexionesConnections
En la lógica de conexión de cliente, reemplace el tiempo de espera predeterminado para que sea de 30 segundos.In your client connection logic, override the default timeout to be 30 seconds. El valor predeterminado de 15 segundos es demasiado corto para conexiones que dependen de Internet.The default of 15 seconds is too short for connections that depend on the internet.
Si usa un grupo de conexiones, asegúrese de cerrar la conexión en el momento en que el programa no la esté usando activamente y no esté preparándose para volver a usarla.If you are using a connection pool, be sure to close the connection the instant your program is not actively using it, and is not preparing to reuse it.
Evite las transacciones de larga ejecución, ya que cualquier error de conexión o de infraestructura puede revertir la transacción.Avoid long-running transactions because any infrastructure or connection failure might roll back the transaction. Si es posible, divida la transacción en varias transacciones más pequeñas y use el procesamiento por lotes para mejorar el rendimiento.If possible, split the transaction in the multiple smaller transactions and use batching to improve performance.
ResistenciaResiliency
Azure SQL Database es un servicio en la nube del que puede esperar errores transitorios que se producen en la infraestructura subyacente o en la comunicación entre las entidades de la nube.Azure SQL Database is a cloud service where you might expect transient errors that happen in the underlying infrastructure or in the communication between cloud entities. Aunque Azure SQL Database es resistente a los errores transitorios de infraestructura, estos pueden afectar a la conectividad.Although Azure SQL Database is resilient on the transitive infrastructure failures, these failures might affect your connectivity. Cuando se produce un error transitorio al establecer una conexión con SQL Database, el código debe reintentar la llamada.When a transient error occurs while connecting to SQL Database, your code should retry the call. Recomendamos hacer uso de la lógica de interrupción en la lógica de reintentos, ya que así el servicio no se sobrecargará con los reintentos de varios clientes a la vez.We recommend that retry logic use backoff logic, so that it does not overwhelm the service with multiple clients retrying simultaneously. La lógica de reintento depende de los códigos de error para las aplicaciones cliente de SQL Database.Retry logic depends on the error messages for SQL Database client programs.
Para más información sobre cómo prepararse para los eventos de mantenimiento planeado en su Azure SQL Database, consulte Planeación de los eventos de mantenimiento en Azure SQL Database.For more information about how to prepare for planned maintenance events on your Azure SQL Database, see planning for Azure maintenance events in Azure SQL Database.
Consideraciones sobre la redNetwork considerations
- En el equipo que hospeda el programa cliente, asegúrese de que el firewall permita la comunicación TCP saliente en el puerto 1433.On the computer that hosts your client program, ensure the firewall allows outgoing TCP communication on port 1433. Más información: Configuración de un firewall de Azure SQL Database.More information: Configure an Azure SQL Database firewall.
- Si el programa cliente se conecta a SQL Database mientras el cliente se ejecuta en una máquina virtual (VM) de Azure, debe abrir determinados intervalos de puerto en la máquina virtual.If your client program connects to SQL Database while your client runs on an Azure virtual machine (VM), you must open certain port ranges on the VM. Más información: Puertos más allá del 1433 para ADO.NET 4.5 y SQL Database.More information: Ports beyond 1433 for ADO.NET 4.5 and SQL Database.
- En ocasiones, las conexiones de cliente a Azure SQL Database omiten el proxy e interactúan directamente con la base de datos.Client connections to Azure SQL Database sometimes bypass the proxy and interact directly with the database. Los puertos que no sean 1433 se convierten en puertos importantes.Ports other than 1433 become important. Para más información, consulte Arquitectura de conectividad de Azure SQL Database y Puertos más allá de 1433 para ADO.NET 4.5 y SQL Database.For more information, Azure SQL Database connectivity architecture and Ports beyond 1433 for ADO.NET 4.5 and SQL Database.
- Para más información sobre la configuración de red de una instancia de Instancia administrada de SQL, vea la configuración de red de Instancia administrada de SQL.For networking configuration for an instance of SQL Managed Instance, see network configuration for SQL Managed Instance.
Pasos siguientesNext steps
Descubra todas las funcionalidades de SQL Database e Instancia administrada de SQL.Explore all the capabilities of SQL Database and SQL Managed Instance.
Para empezar, consulte las guías de Azure SQL Database e Instancias administradas de Azure SQL.To get started, see the guides for Azure SQL Database and Azure SQL Managed Instances.