Skip to content

Latest commit

 

History

History
43 lines (29 loc) · 3.07 KB

constructing-an-sql-statement-odbc.md

File metadata and controls

43 lines (29 loc) · 3.07 KB
title description author ms.author ms.date ms.service ms.subservice ms.topic helpviewer_keywords
Constructing a SQL Statement (ODBC)
Learn how the SQL Server Client ODBC driver deals with SQL statements, parsing some into Transact-SQL statements and passing others to the database unchanged.
markingmyname
maghan
03/14/2017
sql
native-client
reference
SQL Server Native Client ODBC driver, statements
statements [ODBC], constructing
ODBC applications, statements

Constructing a SQL Statement (ODBC)

[!INCLUDESQL Server Azure SQL Database Synapse Analytics PDW]

ODBC applications perform almost all of their database access by executing [!INCLUDEtsql] statements. The form of these statements depends on the application requirements. SQL statements can be constructed in the following ways:

  • Hard-coded

    Static statements performed by an application as a fixed task.

  • Constructed at run time

    SQL statements constructed at run time that enable the user to tailor the statement by using common clauses, such as SELECT, WHERE, and ORDER BY. This includes ad hoc queries entered by users.

The [!INCLUDEssNoVersion] Client ODBC driver parses SQL statements only for ODBC and ISO syntax not directly supported by the [!INCLUDEssDE], which the driver transforms into [!INCLUDEtsql]. All other SQL syntax is passed to the [!INCLUDEssDE] unchanged, where [!INCLUDEssNoVersion] will determine if it is valid [!INCLUDEssNoVersion]. This approach yields two benefits:

  • Reduced overhead

    Processing overhead for the driver is minimized because it only has to scan for a small set of ODBC and ISO clauses.

  • Flexibility

    Programmers can tailor the portability of their applications. To enhance portability against multiple databases, use primarily ODBC and ISO syntax. To use enhancements specific to [!INCLUDEssNoVersion], use the appropriate [!INCLUDEtsql] syntax. The [!INCLUDEssNoVersion] Native Client ODBC driver supports the complete [!INCLUDEtsql] syntax so ODBC-based applications can take advantage of all the features in [!INCLUDEssNoVersion].

The column list in a SELECT statement should contain only the columns required to perform the current task. Not only does this reduce the amount of data sent across the network, but also it reduces the effect of database changes on the application. If an application does not reference a column from a table, then the application is not affected by any changes made to that column.

See Also

Executing Queries (ODBC)