Blog
MSI ODBC Tables ,The Open Database Connectivity (ODBC) tables group consists of five tables that allow the Installer to install ODBC drivers and data sources.
The ODBCDataSource Table:
What is a ODBCDataSource table?
The ODBCDataSource table lists the ODBC data sources in the installation. This table has following columns:

DataSource:
This is an arbitrary string identifying the data source to the Installer.
Component_:
The data source is installed as part of the referenced component.
Description:
This is the description that should be shown to the user when they browse to the data source on their machine. Its length cannot exceed cannot SQL_MAX_DSN_LENGTH.
DriverDescription:
This is the driver name to be used for this data source. This might be a driver in the ODBCDriver table, or it might be a driver that’s already on the user’s computer.
Registration:
This column can contain either 0, to register the data source per-machine, or 1, to register the data source per-user.
The ODBCDriver Table:
What is an ODBCDriver table?
The ODBCDriver table contains the information needed to install ODBC drivers. This table includes the following columns:

Driver:
This is an arbitrary key for this table.
Component_:
It indicates the component that includes this driver.
Description:
This is the non-localizable ODBC key for the driver.
File:
It must point to the DLL that contains the ODBC driver.
File_Setup:
It can be used to indicate a DLL that is called to do the setup of the listed ODBCdriver. If this column is null, then the file listed in the File_ column is assumed to handle its own setup duties.
The ODBCTranslator Table:
What is an ODBCTranslator table? ODBCTranslator table is used to install ODBC translation DLLs. This table includes the following columns:

Translator:
A primary key for the table.
Component_:
This column indicates the component that includes this translator.
Description:
This is the non-localizable description of this translator.
File_:
It must point to the DLL that contains the ODBC translator.
File_Setup:
It can be used to indicate a DLL that is called to do the setup of the listed ODBC translator. If this column is null, then the file listed in the File_ column is assumed to handle its own setup duties.
The ODBCAttribute Table:
What is an ODBCAttribute table?
This table contains attributes for ODBC drivers that need to be registered when the drivers are installed. This table includes following columns:

Driver_:
It indicates the driver that requires this attribute.
Attribute:
This column indicates the name of the attribute.
Value:
This column contains the value to be registered for the attribute.
The ODBCSourceAttribute Table:
What is an ODBCSourceAttribute table? The ODBCSourceAttribute table contains attributes for ODBC data sources that need to be registered when the data sources are installed. This table includes following columns:

DataSource:
It indicates the data source that requires this attribute.
Attribute:
This column holds the name of the attribute.
Value:
This column contains the value to be registered for the attribute.
Application Packaging Demo Video For Your Preview