Att konstruera en SQL-sats (ODBC)

gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics

ODBC-applikationer utför nästan all sin databasåtkomst genom att köra Transact-SQL satser. Formen på dessa uttalanden beror på ansökningskraven. SQL-satser kan konstrueras på följande sätt:

  • Hårdkodad

    Statiska satser utförda av en applikation som en fast uppgift.

  • Byggd vid körtid

    SQL-satser konstruerade vid körning som gör det möjligt för användaren att anpassa satsen genom att använda vanliga klausuler, såsom SELECT, WHERE och ORDER BY. Detta inkluderar ad hoc-frågor som används av användare.

SQL Server Client ODBC-drivrutinen tolkar endast SQL-satser för ODBC- och ISO-syntax som inte direkt stöds av Database Engine, vilken drivrutinen omvandlar till Transact-SQL. All annan SQL-syntax skickas oförändrad till Database Engine, där SQL Server avgör om den är giltig SQL Server. Denna metod ger två fördelar:

  • Minskad omkostnader

    Bearbetningsöverhead för drivrutinen minimeras eftersom den bara behöver skanna efter en liten uppsättning ODBC- och ISO-klausuler.

  • Flexibilitet

    Programmerare kan anpassa portabiliteten i sina applikationer. För att förbättra portabiliteten mot flera databaser, använd främst ODBC- och ISO-syntax. För att använda förbättringar specifika för SQL Server, använd lämplig Transact-SQL syntax. Den SQL Server Native Client ODBC-drivrutinen stödjer hela Transact-SQL-syntaxen så ODBC-baserade applikationer kan dra nytta av alla funktioner i SQL Server.

Kolumnlistan i en SELECT-sats bör endast innehålla de kolumner som krävs för att utföra den aktuella uppgiften. Detta minskar inte bara mängden data som skickas över nätverket, utan även effekten av databasändringar på applikationen. Om en applikation inte refererar till en kolumn från en tabell påverkas applikationen inte av några ändringar i den kolumnen.