About this book

This book, the Open Client Client-Library Migration Guide, contains information on how to migrate Open Client™ DB-Library™ applications to Open Client Client-Library™.

Audience

This book has a dual audience:

How to use this book

Table 1 describes the chapters in this book:

Table 1: Chapters in this book

Chapter

Contents

Chapter 1, “Understanding Client-Library”

Introduces Client-Library and explains what is unique about Client-Library

Chapter 2, “Evaluating an Application for Migration”

Provides guidelines to help you decide whether to migrate a DB-Library application to Client-Library

Chapter 3, “Planning for Migration”

Contains practical information on planning for migration

Chapter 4, “Comparing DB-Library and Client-Library Infrastructures”

Compares the DB-Library and Client-Library infrastructures

Chapter 5, “Converting DB-Library Application Code”

Explains how to accomplish basic DB-Library tasks using Client-Library

Chapter 6, “Advanced Topics”

Contains information on more advanced Client-Library features

Appendix A, “Mapping DB-Library Routines to Client-Library Routines”

Maps DB-Library routines to Client-Library

Return code error checking in code fragments

This book contains a number of code fragments taken from the set of migration sample programs that Sybase provides on the World Wide Web.

The example fragments in this book use the EXIT_ON_FAIL() example macro, which is as follows. Macros similar to this can simplify return code error checking. However, this macro is not appropriate for every situation.

/*
** Define a macro that exits if a function return code indicates
** failure. Accepts a CS_CONTEXT pointer, a Client-Library
** or CS-Library return code, and an error string. If the
** return code is not CS_SUCCEED, the context will be 
** cleaned up (if it is non-NULL), the error message is
** printed, and we exit to the operating system.
*/
#define EXIT_ON_FAIL(context, ret, str) \
  { if (ret != CS_SUCCEED) \
  { \
    fprintf(stderr, \
            "Fatal error: %s\n", str); \
    if (context != (CS_CONTEXT *) NULL) \
    { \
      (CS_VOID) ct_exit(context, CS_FORCE_EXIT); \
      (CS_VOID) cs_ctx_drop(context); \
    } \
    exit(ERROR_EXIT); \
  } }

World Wide Web access

The migration sample programs are on the Sybase World Wide Web page. You can also find these sample programs in the following Open Server installation directory:

On UNIX: $SYBASE/$SYBASE_OCS/sample/db2ct

On Windows: %SYBASE%\%SYBASE_OCS%\sample\db2ct

The README file provided with the migration samples contains a descriptive list of the sample files.

Related documents

Sybase documents Client-Library and DB-Library in a variety of references and guides. Table 2 lists Client-Library and DB-Library manuals.

Table 2: Client-Library and DB-Library documentation

Document name

Description

Open Server and SDK New Features for Microsoft Windows, Linux, and UNIX

Describes new features available for Open Server and the Software Developer’s Kit. This document is revised to include new features as they become available.

Open Client Client-Library/C Reference Manual

Reference manual for Client-Library.

Open Client Client-Library/C Programmer’s Guide

Basic information on programming with Client-Library.

Open Client and Open Server Common Libraries Reference Manual

Reference manual for CS-Library and Bulk-Library.

Open Client DB-Library/C Reference Manual

Reference manual for DB-Library.

Open Client and Open Server Programmer’s Supplement

Platform-specific information for coding Open Client and Open Server applications. Includes:

  • Compile and link instructions for Client-Library applications

  • Information on compiler certifications

  • Information on how to configure your environment to run applications

Open Client and Open Server Configuration Guide

Information on configuring your environment to run Open Client or Open Server applications.

Other sources of information

Use the Sybase Getting Started CD, the SyBooks CD, and the Sybase Product Manuals Web site to learn more about your product:

Sybase certifications on the Web

Technical documentation at the Sybase Web site is updated frequently.

StepsFinding the latest information on product certifications

  1. Point your Web browser to Technical Documents.

  2. Click Certification Report.

  3. In the Certification Report filter select a product, platform, and timeframe and then click Go.

  4. Click a Certification Report title to display the report.

StepsFinding the latest information on component certifications

  1. Point your Web browser to Availability and Certification Reports.

  2. Either select the product family and product under Search by Base Product; or select the platform and product under Search by Platform.

  3. Select Search to display the availability and certification report for the selection.

StepsCreating a personalized view of the Sybase Web site (including support pages)

Set up a MySybase profile. MySybase is a free service that allows you to create a personalized view of Sybase Web pages.

  1. Point your Web browser to Technical Documents.

  2. Click MySybase and create a MySybase profile.

Sybase EBFs and software maintenance

StepsFinding the latest information on EBFs and software maintenance

  1. Point your Web browser to the Sybase Support Page.

  2. Select EBFs/Maintenance. If prompted, enter your MySybase user name and password.

  3. Select a product.

  4. Specify a time frame and click Go. A list of EBF/Maintenance releases is displayed.

    Padlock icons indicate that you do not have download authorization for certain EBF/Maintenance releases because you are not registered as a Technical Support Contact. If you have not registered, but have valid information provided by your Sybase representative or through your support contract, click Edit Roles to add the “Technical Support Contact” role to your MySybase profile.

  5. Click the Info icon to display the EBF/Maintenance report, or click the product description to download the software.

Conventions

Table 3: Syntax conventions

Key

Definition

command

Command names, command option names, utility names, utility flags, and other keywords are in sans serif font.

variable

Variables, or words that stand for values that you fill in, are in italics.

{ }

Curly braces indicate that you choose at least one of the enclosed options. Do not include braces in your option.

[ ]

Brackets mean choosing one or more of the enclosed items is optional. Do not include brackets in your option.

( )

Parentheses are to be typed as part of the command.

|

The vertical bar means you can select only one of the options shown.

,

The comma means you can choose as many of the options shown as you like, separating your choices with commas to be typed as part of the command.

Accessibility features

This document is available in an HTML version that is specialized for accessibility. You can navigate the HTML with an adaptive technology such as a screen reader, or view it with a screen enlarger.

Open Client and Open Server documentation has been tested for compliance with U.S. government Section 508 Accessibility requirements. Documents that comply with Section 508 generally also meet non-U.S. accessibility guidelines, such as the World Wide Web Consortium (W3C) guidelines for Web sites.

NoteYou might need to configure your accessibility tool for optimal use. Some screen readers pronounce text based on its case; for example, they pronounce ALL UPPERCASE TEXT as initials, and MixedCase Text as words. You might find it helpful to configure your tool to announce syntax conventions. Consult the documentation for your tool.

For information about how Sybase supports accessibility, see Sybase Accessibility. The Sybase Accessibility site includes links to information on Section 508 and W3C standards.

If you need help

Each Sybase installation that has purchased a support contract has one or more designated people who are authorized to contact Sybase Technical Support. If you cannot resolve a problem using the manuals or online help, please have the designated person contact Sybase Technical Support or the Sybase subsidiary in your area.