Construindo uma instrução SQL (ODBC)

Aplica-se a:SQL ServerBanco de Dados SQL do AzureInstância Gerenciada de SQL do AzureAzure Synapse AnalyticsPDW (Analytics Platform System)

Os aplicativos ODBC executam quase todo o acesso ao banco de dados executando instruções Transact-SQL. A forma dessas instruções depende dos requisitos do aplicativo. As instruções SQL podem ser construídas das seguintes maneiras:

  • Embutidas em código

    Instruções estáticas executadas por um aplicativo como uma tarefa fixa.

  • Construídas em tempo de execução

    Instruções SQL construídas em tempo de execução que permitem ao usuário adaptar a instrução usando cláusulas comuns, como SELECT, WHERE e ORDER BY. Isso inclui consultas ad hoc inseridas por usuários.

O driver ODBC do cliente SQL Server analisa instruções SQL somente para sintaxe ODBC e ISO sem suporte direto pelo Mecanismo de Banco de Dados, que o driver transforma em Transact-SQL. Todas as outras sintaxes SQL são passadas para o Mecanismo de Banco de Dados inalterada, em que SQL Server determinará se ela é válida SQL Server. Essa abordagem gera dois benefícios:

  • Redução da sobrecarga

    A sobrecarga de processamento do driver é minimizada porque ele só precisa examinar um conjunto pequeno de cláusulas ODBC e ISO.

  • Flexibilidade

    Os programadores podem adaptar a portabilidade dos aplicativos. Para aumentar a portabilidade em vários bancos de dados, use principalmente as sintaxes ISO e ODBC. Para usar aprimoramentos específicos para SQL Server, use a sintaxe Transact-SQL apropriada. O driver ODBC do SQL Server Native Client dá suporte à sintaxe Transact-SQL completa para que os aplicativos baseados em ODBC possam aproveitar todos os recursos do SQL Server.

A lista de colunas em uma instrução SELECT deverá conter apenas as colunas necessárias para executar a tarefa atual. Isso não apenas reduz a quantidade de dados enviados pela rede, mas também reduz o efeito das alterações no banco de dados no aplicativo. Se um aplicativo não fizer referência a uma coluna de uma tabela, ele não será afetado por qualquer alteração feita nessa coluna.

Consulte Também

Executando consultas (ODBC)