An application, as it relates to the ODBC standard, performs tasks such as: requesting a connection to a data source; sending SQL requests to a data source; processing errors; and terminating the connection to a data source. It may also perform functions outside the scope of the ODBC interface.
The process of identifying a user, typically based on a user ID and password. Authentication ensures that the user is who they claim to be. See also
client authentication,
OS authentication, and
user ID/password authentication.
The process of sending large numbers of rows of data to the database in a continuous stream instead of in numerous smaller database protocol packets. This process also is referred to as bulk copy.
There are two types of conformance levels for ODBC drivers—ODBC API and ODBC SQL grammar (see
Secure Sockets Layer (SSL)). Knowing the conformance levels helps you determine the range of functionality available through the driver, even if a particular database does not support all of the functionality of a particular level.
Connection pooling allows you to reuse connections rather than create a new one every time a driver needs to establish a connection to the database. Connection pooling manages connection sharing across different user requests to maintain performance and reduce the number of new connections that must be created.
Connection retry defines the number of times the driver attempts to connect to the primary and, if configured, alternate database servers after the initial unsuccessful connection attempt. Connection retry can be an important strategy for system recovery.
A data source includes both the source of data itself, such as relational database, a flat-file database, or even a text file, and the connection information necessary for accessing the data. Connection information may include such things as server location, database name, logon ID, and other driver options. Data source information is usually stored in a
DSN (Data Source Name).
An ODBC driver communicates with the application through the Driver Manager and performs tasks such as: establishing a connection to a data source; submitting requests to the data source; translating data to and from other formats; returning results to the application; and formatting errors into a standard code and returning them to the application.
The main purpose of the Driver Manager is to load drivers for the application. The Driver Manager also processes ODBC initialization calls and maps data sources to a specific driver.
A DSN stores the data source information (see Data Source) necessary for the Driver Manager to connect to the database. This can be configured either through the ODBC Administrator or in a DSN file. On Windows, the information is called a system or user DSN and is stored in the Registry. Data source information can also be stored in text configuration files, as is the case on UNIX/Linux. Applications deployed in the global assembly cache must have a strong name to handle name and version conflicts.
In Microsoft Windows NT, Windows 2000, Windows XP, Windows Vista, and the Windows Server 2003 family, the DTC is a system service that is part of COM+ services. COM+ components that use DTC can enlist ODBC connections in distributed transactions. This makes it possible to scale transactions from one to many computers without adding special code.
Failover allows an application to connect to an alternate, or backup, database server if the primary database server is unavailable, for example, because of a hardware failure or traffic overload. DataDirect Connect Series
for ODBC provides different levels of failover: connection failover, extended connection failover, and select failover.
An isolation level represents a particular locking strategy employed in the database system to improve data consistency. The higher the isolation level number, the more complex the locking strategy behind it. The isolation level provided by the database determines how a transaction handles data consistency.
Locking is a database operation that restricts a user from accessing a table or record. Locking is used in situations where more than one user might try to use the same table at the same time. By locking the table or record, the system ensures that only one user at a time can affect the data.
MTS is a component-based transaction processing system for developing, deploying, and managing high-performance, scalable, and robust enterprise, Internet, and intranet server applications. MTS was the precursor to COM+, the current version of this processing system (see
DTC (Distributed Transaction Coordinator)).
The ODBC Data Source Administrator manages database drivers and configures DSNs. On computers running the Microsoft Windows 2000, XP, Vista, or Windows 7 operating systems, this application is located in the Windows Control Panel under Administrative Tools. Its icon is named "Data Sources (ODBC)."
OS authentication can take advantage of the user name and password maintained by the operating system to authenticate users to the database or use another set of user credentials specified by the application. By allowing the database to share the user name and password used for the operating system, users with a valid operating system account can log into the database without supplying a user name and password. See also
authentication and
Kerberos authentication.
SSL is an industry-standard protocol for sending encrypted data over database connections. SSL secures the integrity of your data by encrypting information and providing SSL client/SSL server authentication. See also
SSL client/server authentication.
ODBC defines a core grammar that roughly corresponds to the X/Open and SQL Access Group SQL CAE specification (1992). ODBC also defines a minimum grammar, to meet a basic level of ODBC conformance, and an extended grammar, to provide for common DBMS extensions to SQL. The following list summarizes the grammar included in each conformance level:
SSL works by allowing the client and server to send each other encrypted data that only they can decrypt. SSL negotiates the terms of the encryption in a sequence of events known as the SSL handshake. The handshake involves the following types of authentication:
Unicode, developed by the Unicode Consortium, is a standard that attempts to provide unique coding for all international language characters. The current number of supported characters is over 109,000.