Omnis Technical Note TNSQ0029 August 2010

Connecting to Sybase from Mac OSX

for Omnis Studio 4.2 (and later)
by Chris Stevens

Introduction
In this technote, we consolidate the various methods available in Omnis Studio for connection to Sybase Adaptive Server Anywhere (iAnywhere/ASA) and Adaptive Server Enterprise (ASE) databases. The techniques discussed here apply to both Mac OSX 10.5 (Leopard) and 10.6 (Snow Leopard) as well as to Mac OSX 10.4 (Tiger) in the case of Sybase ASA 9 and ASE using PPC architecture.

Connecting to Sybase ASE

As of Studio 5.0.1, you can use the Sybase DAM supplied with Studio to connect to Sybase ASE 12.5 or later.
Prior to Studio 5.0.1 you can use Omnis Studio in Rosetta/PPC mode to connect to Sybase ASE 12.5 or later.

  • via the Sybase DAM
    In Studio 5.0.1, the release of Sybase Open Client 15.0 for Mac-Intel made it possible for us to release a Sybase DAM containing both Intel and PPC architecture. This DAM is backwards compatible with Studio 5.0.
    In Studio 4.2, 4.3 we provide a Sybase DAM containing PPC architecture only. To use this DAM, Studio must either be running on a Mac G4 or G5 (PPC) machine, or on an Intel machine (iMac) in Rosetta mode.
    For further information on running Omnis Studio in Rosetta mode, please refer to technote TNSQ0011

    To use the Sybase DAM, you must have Sybase Open Client installed on each client machine, because the Sybase DAM requires certain dynamic libraries to be present before it can load. For further information on the dynamic libraries required by the Sybase DAM, please refer to Technote TNSQ0009. Please disregard the section concerning the xsybase bundle however, because Omnis is a native mach-o application as of Studio 4.1 and no longer requires this translation layer. This technote discusses the creation of symbolic links to the Open Client libraries where the version installed on your client machine differs from the version expected by the Sybase DAM. It also discusses the environment variables required by Open Client and how these can be set up. There is however a separate technote: TNSQ0025, which discusses this in greater detail.
  • via the ODBC DAM
    You can use the ODBC DAM supplied with Omnis Studio to connect to a Sybase ASE server provided that you have a compatible ODBC driver installed on the client machine. There are several ODBC drivers available provided by various ODBC vendors, each offering slightly differnt behaviour and performance.
    We periodically test the latest ODBC drivers against various database backends to ascertain the driver which works best and is the most stable with our ODBC DAM. To see the latest recommended connection from Mac OSX, please refer to the DAMs client configuration page.

    To set up an ODBC connection, use the ODBC Administrator located in the Applications:Utilities folder.
    Create either a System or User Data Source Name (DSN), specifying the Sybase ODBC driver you want to use and enter the connection details in the fields provided. The DSN name you create will form the hostname when you connect using the ODBC DAM.
  • via the JDBC DAM
    You can also use the JDBC DAM supplied with Omnis Studio in conjunction with a compatible JDBC driver to connect to a Sybase database. To use this method, you need to ensure that the Java environment on your client machine is correctly configured before proceeding. Technote TNSQ0024 discusses the creation and use of JDBC connections in greater detail.

    At time of writing, the current jConnect JDBC driver, obtainable from www.sybase.com is jConnect-6_05,
    for which the hostname will be of the form:
    jdbc:sybase:Tds:IP_address/DNS_Name:port
    and the driver name will be:
    com.sybase.jdbc3.jdbc.SybDriver

Connecting to Sybase ASA

You can connect to Sybase Adaptive Server Anywhere 9, 10,11 & 12 databases in a broadly similar fashion as described above although there are one or two differences to be aware of.

  • via the Sybase DAM
    You can use the Sybase DAM supplied with Studio 4.2 (and later) to connect to Sybase ASA exactly as described above. Technote TNSQ0008 describes the different port number that will need to be specified in your interfaces file however.
     
  • via the ODBC DAM
    Sybase ASA has the advantage in some respect that a compatible ODBC driver is supplied with the product.
     
    To connect to Sybase ASA 9, you can use the ODBC DAM supplied with Studio 4.2 (and later). This is because the ODBC API level used by the driver supplied with ASA9 (dbodbc9_r.bundle) is compatible with the DAM. Please refer to Technote TNSQ0008 for further details.
     
    To connect to Sybase ASA 10 (or later) you need to use a replacement ODBC DAM available from the Omnis FTP site. This is necessary because the latest drivers provided with Sybase ASA are not fully ODBC compliant. Conversely, the replacement DAM will not work with other/standard ODBC DSNs. Also, you must remove the existing ODBC DAM from the xcomp folder to prevent conflict.
    Technotes, TNSQ0016 and TNSQ0021 discuss connection to Sybase ASA 11 in greater detail, although the same technique applies to Sybase ASA 10, 11 & 12. You can disregard the 64-bit aspect to the latter technote incidentally.
     
  • via the JDBC DAM
    You can use the JDBC DAM supplied with Studio 4.2 (and later) to connect to Sybase ASA exactly as described above. Technote TNSQ0024 describes JDBC connections in more detail.
    You can use the same jConnect-6_05 driver to connect to Sybase ASE and ASA databases incidentally, only the port number expected by ASA is different (2638 by default).