Connecting to databases for ODBC and CLI

The IBM® Data Server Driver for ODBC and CLI is not part of the IBM Data Server Client or the IBM Data Server Runtime Client. It must be installed and configured separately. The IBM Data Server Driver for ODBC and CLI does not create a local database directory. This means that when you use this driver, you must make connectivity information available to your applications in other ways.

Before you begin

To connect to databases with the IBM Data Server Driver for ODBC and CLI, you need:

About this task

There are several ways to specify connectivity information so that your CLI and ODBC database applications can use the IBM Data Server Driver for ODBC and CLI to connect to a database. When CLI settings are specified in multiple places, they are used in the listed order:
  1. Connection strings parameters
  2. db2cli.ini file
  3. db2dsdriver.cfg file

Procedure

To configure connectivity for a database when using the IBM Data Server Driver for ODBC and CLI, use one of the listed methods:

  • Specify the database connectivity information in the connection string parameter to SQLDriverConnect.
  • For CLI applications only: put the database connectivity information in the CLI configuration file.

    There is no support for the Command Line Processor (CLP) with the IBM Data Server Driver for ODBC and CLI. For this reason, you cannot update CLI configuration by using the CLP command "db2 update CLI cfg"; you must update the db2cli.ini initialization file manually.

    If you have multiple copies of the IBM Data Server Driver for ODBC and CLI installed, each copy of the driver has its own db2cli.ini file. Ensure that you make the additions to the db2cli.ini for the correct copy of the driver.

    For more information about the location of the db2cli.ini file, see db2cli.ini initialization file.

  • Use the db2dsdriver.cfg configuration file to provide connection information and parameters.
    For example, you can specify the listed information in the db2dsdriver.cfg configuration file, and pass the connection string in SQLDriverConnect() as DSN=myDSN;PWD=XXXXX:
    <configuration>
      <dsncollection>
        <dsn alias="myDSN" name="sample" host="server.domain.com" port="446">
        </dsn>
      </dsncollection>
      <databases>
        <database name="sample" host="server.domain.com" port="446">
          <parameter name="CommProtocol" value="TCPIP"/>
          <parameter name="UID" value="username"/>
        </database>
      </databases>
    </configuration> 
  • For ODBC applications only: register the database as an ODBC data source with the ODBC driver manager.
  • Use the FileDSN CLI/ODBC keyword to identify a file data source name (DSN) that contains the database connectivity information.
    For more information, see FileDSN CLI/ODBC configuration keyword.

    A file DSN is a file that contains database connectivity information. You can create a file DSN by using the SaveFile CLI/ODBC keyword. On Windows operating systems, you can use the Microsoft ODBC driver manager to create a file DSN.

  • For local database servers only: use the PROTOCOL and the INSTANCE CLI/ODBC keywords to identify the local database.
    1. Set the PROTOCOL CLI/ODBC keyword to the value Local.
    2. Set the INSTANCE CLI/ODBC keyword to the instance name of the local database server on which the database is located.

    For more information, see Protocol CLI/ODBC configuration keyword and Instance CLI/ODBC configuration keyword.

    • For FileDSN Choose Enable SSL security option to utilize Secure Sockets Layer protocol(SSL) for connecting to database in Microsoft ODBC Data Source Administrator.

Example

For the examples, consider a database with the listed properties:
  • The database or subsystem is called db1 on the server
  • The server is located at 11.22.33.44
  • The access port is 56789
  • The transfer protocol is TCPIP.
To make a connection to the database in a CLI application, you can perform one of the listed actions:
  • Call SQLDriverConnect with a connection string that contains: Database=db1; Protocol=tcpip; Hostname=11.22.33.44; Servicename=56789;
  • Add the example to db2cli.ini:
    [db1]
    Database=db1
    Protocol=tcpip
    Hostname=11.22.33.44
    Servicename=56789
To make a connection to the database in an ODBC application:
  1. Register the database as an ODBC data source called odbc_db1 with the driver manager.
  2. Call SQLConnect with a connection string that contains: Database=odbc_db1;