Crear una instrucción SQL (ODBC)

Se aplica a:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Las aplicaciones ODBC realizan casi todo el acceso a la base de datos mediante la ejecución de instrucciones Transact-SQL. El formato de estas instrucciones depende de los requisitos de aplicación. Pueden crearse instrucciones SQL de las siguientes formas:

  • Codificadas de forma rígida

    Instrucciones estáticas ejecutadas por una aplicación como una tarea fija.

  • Creadas en tiempo de ejecución

    Instrucciones SQL creadas en tiempo de ejecución que permiten al usuario personalizar la instrucción utilizando cláusulas comunes, como SELECT, WHERE y ORDER BY. Entre este tipo de instrucciones se incluyen las consultas ad hoc escritas por usuarios.

El controlador ODBC del cliente SQL Server analiza las instrucciones SQL solo para la sintaxis ODBC e ISO no admitida directamente por el motor de base de datos, que el controlador transforma en Transact-SQL. La otra sintaxis SQL se pasa al motor de base de datos sin cambios, donde SQL Server determinará si es válida SQL Server. Este enfoque ofrece dos ventajas:

  • Reducción de la sobrecarga

    El procesamiento de la sobrecarga del controlador se minimiza ya que solo tiene que examinar un conjunto pequeño de las cláusulas ODBC e ISO.

  • Flexibilidad

    Los programadores pueden personalizar la portabilidad de sus aplicaciones. Para mejorar la portabilidad en distintas bases de datos, utilice principalmente la sintaxis ODBC e ISO. Para usar mejoras específicas de SQL Server, use la sintaxis de Transact-SQL adecuada. El controlador ODBC de SQL Server Native Client admite la sintaxis completa de Transact-SQL para que las aplicaciones basadas en ODBC puedan aprovechar todas las características de SQL Server.

La lista de columnas de una instrucción SELECT solo debe incluir las columnas necesarias para realizar la tarea actual. Esto no solo hace que se reduzca la cantidad de datos enviados a través de la red, sino que también reduce el efecto de los cambios de la base de datos en la aplicación. Si una aplicación no hace referencia a una columna de una tabla, cualquier cambio que se realice en dicha columna no afectará a la aplicación.

Consulte también

Ejecutar consultas (ODBC)