04.12.2012 Views

ASE ODBC Driver and OLE DB Provider Migration Technical - Sybase

ASE ODBC Driver and OLE DB Provider Migration Technical - Sybase

ASE ODBC Driver and OLE DB Provider Migration Technical - Sybase

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

white papeR<br />

<strong>ASE</strong> <strong>O<strong>DB</strong>C</strong> <strong>Driver</strong> <strong>and</strong> <strong>OLE</strong> <strong>DB</strong><br />

<strong>Provider</strong> <strong>Migration</strong> <strong>Technical</strong><br />

Whitepaper<br />

www.sybase.com


taBLe Of cOntents<br />

1 Introduction<br />

1 <strong>O<strong>DB</strong>C</strong> Architecture<br />

2 Overview of <strong>OLE</strong> <strong>DB</strong><br />

2 <strong>Migration</strong> Overview<br />

3 Supported Platforms<br />

3 <strong>Sybase</strong> <strong>Driver</strong> Names<br />

3 <strong>Migration</strong> Tools Simplify the <strong>Migration</strong> Task<br />

4 <strong>Sybase</strong> <strong>ASE</strong> Data Source Administrator<br />

4 The DSNMigrate utility<br />

4 Properties not Migrated<br />

6 Automatic Data Source Backups<br />

6 How to Migrate for Large Number of Clients<br />

6 Developing New Applications Using <strong>Sybase</strong> <strong>O<strong>DB</strong>C</strong> <strong>and</strong> <strong>OLE</strong> <strong>DB</strong> <strong>Provider</strong>s<br />

6 Testing Considerations<br />

6 Connection Property Matrix<br />

8 <strong>Sybase</strong> <strong>ASE</strong> Data Source Administrator<br />

18 Uninstalling OEM Products<br />

22 References<br />

x


1 intROductiOn<br />

The <strong>O<strong>DB</strong>C</strong> driver interface is a call-based application programming interface defined by Microsoft Corporation as<br />

a st<strong>and</strong>ard interface for database management systems. <strong>OLE</strong> <strong>DB</strong> provider is a data access model also developed by<br />

Microsoft. It uses the Component Object Model (COM) interface <strong>and</strong>, unlike <strong>O<strong>DB</strong>C</strong>, does not need to assure that the<br />

data source uses an SQL query processor. In previous releases of Adaptive Server Enterprise (<strong>ASE</strong>), <strong>Sybase</strong> shipped third-<br />

party <strong>O<strong>DB</strong>C</strong> driver <strong>and</strong> <strong>OLE</strong> <strong>DB</strong> provider interfaces for users to connect to Adaptive Server Enterprise for data access.<br />

Now <strong>Sybase</strong> has developed its own <strong>O<strong>DB</strong>C</strong> driver <strong>and</strong> <strong>OLE</strong> <strong>DB</strong> provider interface products to provide our customers with<br />

better support for database connectivity.<br />

The new <strong>Sybase</strong> drivers provide many benefits to our customers.<br />

1. Customer requirements are incorporated in product design <strong>and</strong> development: Since these drivers are developed in<br />

house, <strong>Sybase</strong> can incorporate customer requirements in product design <strong>and</strong> development.<br />

2. Frequent updates of feature enhancements <strong>and</strong> bug fixes will be available directly from <strong>Sybase</strong>.<br />

3. Full Support for <strong>ASE</strong> 15.0 features: These drivers support all <strong>ASE</strong> 15.0 features <strong>and</strong> are engineered to work<br />

seamlessly with <strong>ASE</strong>.<br />

This document provides guidance to developers who are migrating a third-party <strong>O<strong>DB</strong>C</strong> driver or <strong>OLE</strong> <strong>DB</strong> provider<br />

to <strong>Sybase</strong>’s <strong>O<strong>DB</strong>C</strong> driver or <strong>OLE</strong> <strong>DB</strong> provider. It describes the appropriate migration tools you can use to facilitate the<br />

work, <strong>and</strong> it also lists various steps necessary to complete your migration. Furthermore, it provides an effective way for<br />

large enterprises to migrate datasources on multiple machines.<br />

2 OdBc aRchitectuRe<br />

The <strong>O<strong>DB</strong>C</strong> architecture has four components:<br />

• Application. Performs processing <strong>and</strong> calls <strong>O<strong>DB</strong>C</strong> functions to submit SQL statements <strong>and</strong> retrieve results.<br />

• <strong>Driver</strong> Manager. Loads <strong>and</strong> unloads drivers on behalf of an application. Processes <strong>O<strong>DB</strong>C</strong> function calls or passes<br />

them to a driver.<br />

• <strong>Driver</strong>. Processes <strong>O<strong>DB</strong>C</strong> function calls, submits SQL requests to a specific data source, <strong>and</strong> returns results to the<br />

application. If necessary, the driver modifies an application’s request so that the request conforms to syntax<br />

supported by the associated <strong>DB</strong>MS.<br />

• Data source. Consists of the data the user wishes to access <strong>and</strong> its associated operating system, <strong>DB</strong>MS, <strong>and</strong><br />

network platform (if any) used to access the <strong>DB</strong>MS.<br />

The following illustration shows the relationship between these four components.<br />

1


2<br />

Please note the following about this diagram: First, multiple drivers <strong>and</strong> data sources can exist, which allows the<br />

application to access data from more than one data source simultaneously. Second, the <strong>O<strong>DB</strong>C</strong> API is used in two<br />

places: Between the application <strong>and</strong> the <strong>Driver</strong> Manager, <strong>and</strong> between the <strong>Driver</strong> Manager <strong>and</strong> each driver. The<br />

interface between the <strong>Driver</strong> Manager <strong>and</strong> the drivers is sometimes referred to as the service provider interface, or SPI.<br />

For <strong>O<strong>DB</strong>C</strong>, the application programming interface (API) <strong>and</strong> the service provider interface (SPI) are the same; that is,<br />

the <strong>Driver</strong> Manager <strong>and</strong> each driver have the same interface to the same functions.<br />

3 OveRview Of OLe dB<br />

Today, a vast amount of the critical information necessary for conducting day-to-day business is found outside of<br />

traditional, corporate production databases. Instead, this information is found in file systems, in indexed-sequential<br />

files such as Btrieve, <strong>and</strong> in personal databases such as Microsoft® Access <strong>and</strong> Microsoft Visual FoxPro®; it’s also found<br />

in productivity tools such as spreadsheets, project management planners, <strong>and</strong> electronic mail; finally, more <strong>and</strong> more<br />

frequently, it’s found on the World Wide Web.<br />

To take advantage of the benefits of database technology, such as declarative queries, transactions, <strong>and</strong> security,<br />

businesses have traditionally had to move the data from its original containing system into some type of database<br />

management system (<strong>DB</strong>MS). This process is expensive <strong>and</strong> redundant. Furthermore, businesses need to be able to<br />

exploit the advantages of database technology not only when accessing data within a <strong>DB</strong>MS but also when accessing<br />

data from any other type of information container. To address this need, Microsoft created <strong>OLE</strong> <strong>DB</strong>.<br />

<strong>OLE</strong> <strong>DB</strong> is a set of Component Object Model (COM) interfaces that provide applications with uniform access to data<br />

stored in diverse information sources <strong>and</strong> that also provide the ability to implement additional database services.<br />

These interfaces support the amount of <strong>DB</strong>MS functionality appropriate to the data store, enabling it to share its data.<br />

4 MigRatiOn OveRview<br />

To migrate your applications from the third-party <strong>O<strong>DB</strong>C</strong> driver <strong>and</strong> <strong>OLE</strong> <strong>DB</strong> provider to <strong>Sybase</strong>’s <strong>O<strong>DB</strong>C</strong> driver <strong>and</strong><br />

<strong>OLE</strong> <strong>DB</strong> provider, it is important to underst<strong>and</strong> the structure of your environment. The following diagram illustrates an<br />

<strong>O<strong>DB</strong>C</strong> application that connects to Adaptive Server Enterprise. At the core of the <strong>O<strong>DB</strong>C</strong> application is the <strong>O<strong>DB</strong>C</strong> driver,<br />

which facilitates connectivity to <strong>ASE</strong>.<br />

To migrate from a third-party <strong>O<strong>DB</strong>C</strong> driver to the <strong>Sybase</strong> <strong>O<strong>DB</strong>C</strong> driver,<br />

1. Replace the third-party driver with the <strong>Sybase</strong> <strong>O<strong>DB</strong>C</strong> driver.<br />

2. Change the data source definitions (DSN) using the migration tool.<br />

Your application should function with no additional changes.<br />

To migrate from a third-party <strong>OLE</strong> <strong>DB</strong> provider to the <strong>Sybase</strong> <strong>OLE</strong> <strong>DB</strong> provider,<br />

1. Replace it with the <strong>Sybase</strong> <strong>OLE</strong> <strong>DB</strong> provider.<br />

2. Use the migration tool to transform existing third party data sources to the <strong>Sybase</strong> <strong>OLE</strong> <strong>DB</strong> provider format.<br />

Your application should function with no additional changes.


5 suppORted pLatfORMs<br />

The <strong>ASE</strong> <strong>OLE</strong> <strong>DB</strong> <strong>Provider</strong> is designed to work with <strong>OLE</strong> <strong>DB</strong> 2.5 <strong>and</strong> later. Supported platforms include Microsoft<br />

Windows NT 4.0, 2000, XP, 2003, Vista <strong>and</strong> 2008 (x86 <strong>and</strong> x64 architectures).<br />

The <strong>ASE</strong> <strong>O<strong>DB</strong>C</strong> <strong>Driver</strong> supports all Level 2 features. The driver is supported on Windows 2000, 2003, XP, Vista <strong>and</strong><br />

2008; 32-bit <strong>and</strong> 64-bit (x86 <strong>and</strong> x64 architectures); Linux 32-bit <strong>and</strong> 64-bit (x86 <strong>and</strong> x64 architectures), <strong>and</strong> Mac OS X.<br />

See the <strong>ASE</strong> Software Developer’s Kit <strong>and</strong> Open Server 12.5.1 Installation Guide for version details regarding<br />

supported platforms.<br />

6 syBase dRiveR naMes<br />

Upon installation, the driver DLLs are copied to their respective install directories. Listed below are the important<br />

attributes for filename, driver name <strong>and</strong> product name:<br />

<strong>Sybase</strong>:<br />

OEM:<br />

%SYB<strong>ASE</strong>%\DataAccess\[<strong>O<strong>DB</strong>C</strong>|<strong>OLE</strong><strong>DB</strong>]\dll<br />

<strong>O<strong>DB</strong>C</strong> filename: sybdrvodb.dll [winx64: sybdrvodb64.dll]<br />

<strong>O<strong>DB</strong>C</strong> driver name: Adaptive Server Enterprise<br />

<strong>O<strong>DB</strong>C</strong> product name: <strong>ASE</strong> <strong>O<strong>DB</strong>C</strong> <strong>Driver</strong> by <strong>Sybase</strong><br />

<strong>OLE</strong> <strong>DB</strong> filename: sybdrvoledb.dll<br />

<strong>OLE</strong> <strong>DB</strong> provider name: <strong>ASE</strong><strong>OLE</strong><strong>DB</strong> or “<strong>Sybase</strong> <strong>OLE</strong><strong>DB</strong> <strong>Provider</strong>”<br />

<strong>OLE</strong> <strong>DB</strong> product name: <strong>ASE</strong> <strong>OLE</strong><strong>DB</strong> <strong>Provider</strong> by <strong>Sybase</strong><br />

%SYB<strong>ASE</strong>%\[<strong>O<strong>DB</strong>C</strong>|<strong>OLE</strong><strong>DB</strong>]<br />

<strong>O<strong>DB</strong>C</strong> filename: syodase.dll<br />

<strong>O<strong>DB</strong>C</strong> driver name: <strong>Sybase</strong> <strong>ASE</strong> <strong>O<strong>DB</strong>C</strong> <strong>Driver</strong><br />

<strong>O<strong>DB</strong>C</strong> product name: “<strong>Sybase</strong> <strong>ASE</strong> <strong>O<strong>DB</strong>C</strong> <strong>Driver</strong> “<br />

or “<strong>O<strong>DB</strong>C</strong> <strong>Driver</strong> Kit”<br />

<strong>OLE</strong> <strong>DB</strong> filename: sydaase.dll<br />

<strong>OLE</strong> <strong>DB</strong> provider name: <strong>Sybase</strong>.<strong>ASE</strong><strong>OLE</strong><strong>DB</strong><strong>Provider</strong><br />

or “<strong>Sybase</strong> <strong>ASE</strong> <strong>OLE</strong> <strong>DB</strong> <strong>Provider</strong>”<br />

<strong>OLE</strong> <strong>DB</strong> product name: <strong>Sybase</strong> <strong>ASE</strong> <strong>OLE</strong> <strong>DB</strong> <strong>Provider</strong><br />

7 MigRatiOn tOOLs siMpLify the MigRatiOn task<br />

One of the critical issues encountered when migrating from the OEM <strong>O<strong>DB</strong>C</strong> <strong>and</strong> <strong>OLE</strong> <strong>DB</strong> drivers to the <strong>Sybase</strong><br />

organic drivers is one of migrating existing data sources.<br />

In addition, with <strong>OLE</strong> <strong>DB</strong> the OEM driver supports the creation of external data sources; but, there is no st<strong>and</strong>ard<br />

tool that can be used for all drivers. Thus, for <strong>O<strong>DB</strong>C</strong>, the <strong>O<strong>DB</strong>C</strong> Administrator must deal with all of these issues.<br />

The <strong>Sybase</strong> <strong>ASE</strong> Data Source Administrator addresses both of these problems. It displays a list of existing data<br />

sources for both of the drivers (OEM <strong>and</strong> <strong>Sybase</strong> <strong>and</strong> <strong>O<strong>DB</strong>C</strong> <strong>and</strong> <strong>OLE</strong> <strong>DB</strong>). It also allows the creation <strong>and</strong> manipulation<br />

of <strong>Sybase</strong> <strong>OLE</strong> <strong>DB</strong> data sources, as well as the migration of existing OEM data sources to <strong>Sybase</strong> organic data sources.<br />

Lastly, <strong>Sybase</strong> provides a comm<strong>and</strong> line utility for migrating data sources in DOS batch procedures; this is ideal for<br />

mass-migrating data sources while the Data Source Administrator provides an interactive environment for migrating<br />

fewer or individual data sources. Go to section 17 for more details about these tools.<br />

3


4<br />

8 syBase ase data sOuRce adMinistRatOR<br />

The Data Source Administrator is designed to provide users with an interactive tool to enable the migration of<br />

both OEM <strong>O<strong>DB</strong>C</strong> <strong>and</strong> <strong>OLE</strong> <strong>DB</strong> data sources, as well as creating <strong>and</strong> modifying <strong>Sybase</strong> <strong>OLE</strong> <strong>DB</strong> data sources. All <strong>O<strong>DB</strong>C</strong><br />

data sources are maintained using the <strong>O<strong>DB</strong>C</strong> Data Source Administrator available with the Microsoft Windows<br />

operating system.<br />

To run the Data Source Administrator, click the ‘Data Source Administrator’ menu item in the ‘DataAccess’ program<br />

group under ‘<strong>Sybase</strong>’, or run ‘sybdrvadm.exe’ from the install directory at ‘%SYB<strong>ASE</strong>%\DataAccess\bin’.<br />

Upon startup, the tool displays all <strong>OLE</strong> <strong>DB</strong> <strong>and</strong> <strong>O<strong>DB</strong>C</strong> data sources for both OEM <strong>and</strong> <strong>Sybase</strong>. Users can choose the<br />

OEM data source to migrate, or alternatively create, modify or delete existing <strong>Sybase</strong> <strong>OLE</strong> <strong>DB</strong> data sources.<br />

9 the dsnMigRate utiLity<br />

This comm<strong>and</strong> line utility provides users with the same capabilities as the interactive Data Source Administrator<br />

described above, but being a non-UI tool, it provides users with a comm<strong>and</strong> that can be used in DOS batch procedures<br />

to help automate the migration process.<br />

To run the comm<strong>and</strong> line utility, run ‘dsnmigrate.exe’ which is also located in the install directory at ‘%SYB<strong>ASE</strong>%\<br />

DataAccess\bin’. Running this utility with the ‘/h’ argument displays all the available migration options listed below;<br />

you may choose the option which best suits your environment.<br />

/?, /h, /help Displays this message. This message will also be displayed if dsnmigrate.exe is called with no<br />

comm<strong>and</strong> line arguments.<br />

/oledb Puts dsnmigrate into <strong>OLE</strong><strong>DB</strong>-mode. By default <strong>O<strong>DB</strong>C</strong> DSNs are migrated.<br />

/l Displays a list of all <strong>Sybase</strong> OEM User <strong>and</strong> System DSNs<br />

/ul Displays a list of all <strong>Sybase</strong> OEM User DSNs<br />

/sl Displays a list of all <strong>Sybase</strong> OEM System DSNs<br />

/a Converts all <strong>Sybase</strong> OEM User <strong>and</strong> System DSNs<br />

/ua Converts all <strong>Sybase</strong> OEM User DSNs<br />

/sa Converts all <strong>Sybase</strong> OEM System DSNs<br />

/dsn Converts specific <strong>Sybase</strong> OEM User or System DSN<br />

/udsn Converts specific <strong>Sybase</strong> OEM User DSN<br />

/sdsn Converts specific <strong>Sybase</strong> OEM System DSN<br />

dsn The name of the DSN to be converted<br />

/suffix This optional switch changes the way the DSNs are named. If this switch is used, the original<br />

OEM DSN will retain its current name <strong>and</strong> the new DSN will be named ‘-’.<br />

suffix The suffix that will be used to name the new DSN.<br />

10 pROpeRties nOt MigRated<br />

Following is a list of OEM properties not migrated in the current version; some of these may be supported in future<br />

releases.<br />

Also, appropriate warning messages are issued when a property cannot be migrated or when user attention is<br />

directed to a specific situation where manual intervention is required; therefore, it is extremely important to review<br />

<strong>and</strong> react if necessary to resultant messages:


<strong>OLE</strong><strong>DB</strong><br />

The following OEM properties are not supported:<br />

<strong>O<strong>DB</strong>C</strong><br />

ClsID<br />

KB_Network_Authentication<br />

KB_Mutual_Authentication<br />

KB_DataIntegrity<br />

KB_DataConfidentiality<br />

KB_ReplayDetection<br />

KB_OutOfSequence<br />

InitializationString<br />

TruncateTimeTypeFractions<br />

Use<strong>Sybase</strong>LDAP<br />

Row Cache Size<br />

Extended ErrorInfo<br />

Print Statement Behavior<br />

Raise Error Behavior<br />

Network Protocol<br />

<strong>Provider</strong>Name<br />

The following OEM properties are migrated as-is, but they are not supported by the organic driver:<br />

of host:port pairs]<br />

alternateservers [organic property alternateservers is used for SDC support which is a comma separated list<br />

applicationusingthreads<br />

connectionretrycount<br />

connectionretrydelay<br />

cursorcachesize<br />

databases<br />

distributedtransactionmodel<br />

enabledescribeparam<br />

interfacesfileservername<br />

kb_dataconfidentiality<br />

kb_dataintegrity<br />

kb_mutual_authentication<br />

kb_network_authentication<br />

kb_outofsequence<br />

kb_replaydetection<br />

loadbalancing<br />

networklibraryname<br />

raiserrorpositionbehavior<br />

reportcodepageconversionerrors<br />

truncatetimetypefractions<br />

useldaphaserver<br />

usesybaseldap<br />

xaopenstringparameters<br />

5


6<br />

11 autOMatic data sOuRce Backups<br />

In order to preserve <strong>and</strong> allow users to refer to migrated OEM data sources, the migration tools automatically create a<br />

backup of the migrated data source by adding the suffix ‘backup’ to the original name. For example, an OEM data source<br />

named ‘Test’ will be migrated to <strong>Sybase</strong> as ‘Test’, <strong>and</strong> the original OEM data source will be renamed to ‘Test-backup’.<br />

12 hOw tO MigRate a LaRge nuMBeR Of cLients<br />

When your migration involves a large number of clients, it may not be practical to migrate each client individually<br />

due to time constraints or in order to maintain consistency throughout the enterprise. Therefore, it is recommended<br />

that in these scenarios the comm<strong>and</strong> line utility ‘dsnmigrate.exe’ be used in a batch procedure with the appropriate<br />

argument to migrate either all, or the desired category, of data sources.<br />

For example, the ‘/a’, ‘/ua’, <strong>and</strong> ‘/sa’ arguments provide for migrating groups of data sources. The /dsn argument can<br />

be used to specify a specific data source for migration.<br />

13 deveLOping new appLicatiOns using syBase OdBc <strong>and</strong> OLe dB pROvideRs<br />

Developing applications using the <strong>Sybase</strong> drivers is consistent with developing applications using other OEM <strong>O<strong>DB</strong>C</strong><br />

<strong>and</strong> <strong>OLE</strong><strong>DB</strong> drivers that are 100% compliant at the API level; therefore, an <strong>O<strong>DB</strong>C</strong> application, for example, written for an<br />

OEM driver that is fully API compliant with the <strong>O<strong>DB</strong>C</strong> specification, will compile <strong>and</strong> run successfully with the <strong>Sybase</strong><br />

organic driver.<br />

14 testing cOnsideRatiOns<br />

As with any development project, it is highly recommended that customers test their applications prior to full<br />

deployment in order to detect <strong>and</strong> rectify errors that may have been introduced in the migration process.<br />

15 cOnnectiOn pROpeRty MatRix<br />

For situations where the application developer needs to know the connection property names on “DSN-less”<br />

connection strings, this matrix is provided as a matter of convenience.<br />

The format will provide the property names as seen in the registry <strong>and</strong> the <strong>O<strong>DB</strong>C</strong> Data Source Administrator (GUI).<br />

If the DataDirect property name in the GUI is different than the actual property name, the name will be provided in<br />

parentheses.<br />

For the <strong>Sybase</strong> <strong>O<strong>DB</strong>C</strong> <strong>Driver</strong>, property names are present in the registry in lowercase. In this matrix, mixed-case is<br />

used for ease of reading. You can use mixed-case in a connection string.<br />

In some cases, a sample value is provided for the <strong>Sybase</strong> <strong>Driver</strong> property.


<strong>O<strong>DB</strong>C</strong> Connection Property Compatible Names<br />

OEM (Tabs from DSN) <strong>Sybase</strong><br />

General Tab<br />

Description Description<br />

NetworkLibraryName ---<br />

NetworkAddress Data Source<br />

Server <strong>and</strong> Port<br />

Database Database<br />

InterfacesFile DSURL<br />

file://path_to_sql.ini\sql.ini<br />

InterfacesFileServerName DsServiceName<br />

Advanced Tab<br />

RaiserrorPositionBehavior ---<br />

DefaultLongDataBuffLen (KB) TextSize (Bytes)<br />

DistributedTransactionModel DistributedTransactionProtocol<br />

InitializationString InitializationString<br />

ReportCodePageConversionErrors ---<br />

XAOpenStringParameters ---<br />

ApplicationUsingThreads ---<br />

EnableQuotedIdentifiers QuotedIdentifier<br />

EnableDescribeParam ---<br />

TightlyCoupledTransactions TightlyCoupledTransaction<br />

TruncateTimeTypeFractions ---<br />

Connection<br />

Databases ---<br />

Default Login Id (LoginId) LogonId<br />

WorkStationId ClientHostName<br />

Charset Charset<br />

ApplicationName ApplicationName<br />

Language Language<br />

PasswordEncryption EncryptPassword<br />

Kerberos AuthenticationClient=<br />

KB_Network_Authentication ---<br />

KB_Remote_Principal ServerPrincipal<br />

Performance<br />

SelectMethod UseCursor<br />

mitkerberos<br />

OptimizePrepare (Prepare Method) DynamicPrepare<br />

FetchArraySize FetchArraySize<br />

PacketSize PacketSize<br />

ConnectionCacheSize ---<br />

cybersafekerberos<br />

activedirectory<br />

7


8<br />

16 syBase ase data sOuRce adMinistRatOR<br />

<strong>ASE</strong> <strong>O<strong>DB</strong>C</strong> <strong>Driver</strong>/<strong>OLE</strong> <strong>DB</strong> <strong>Provider</strong> Connection Properties<br />

The format used to describe the connection properties includes the name of the property as used in the <strong>O<strong>DB</strong>C</strong><br />

<strong>Driver</strong> administrator, followed by the actual property name used in connection strings, surrounded in square brackets.<br />

Example:<br />

Enable High Availability [hasession/HASession]: [Descriptive text explaining the parameter]. Default [is|=] value.<br />

The connection property name isn’t case sensitive. Lower case is equivalent to the conventional upper case for<br />

initial letter of each word in the property. Words must be concatenated when the property is used in the connection<br />

string for <strong>O<strong>DB</strong>C</strong> driver connection strings. The same goes with <strong>OLE</strong> <strong>DB</strong> <strong>Provider</strong> connection properties, unless you use<br />

the generic properties such as “Initial Catalog”, “User ID”, etc.<br />

Example <strong>O<strong>DB</strong>C</strong> Connection strings:<br />

AseConnectionString = “{<strong>Driver</strong> = Adaptive Server Enterprise};UID=sa;PWD=xxx;Database=testdb;Server=asehost;<br />

Port=5000;AnsiNull=1;UseCursor=1;DynamicPrepare=1;…..”<br />

Another way to do this:<br />

AseConnectionString = “{<strong>Driver</strong> = Adaptive Server Enterprise};uid=sa;pwd=xxx;database=testdb;server=asehost;<br />

port=5000;ansinull=1;usecursor=1;dynamicprepare=1;…..”<br />

Also, you can replace {<strong>Driver</strong>=…} with DSN=ase_DSN <strong>and</strong> include other properties to over-ride DSN settings.<br />

Example <strong>OLE</strong> <strong>DB</strong> <strong>Provider</strong> Connection strings:<br />

OleDbConnectionString = “<strong>Provider</strong>=<strong>ASE</strong><strong>OLE</strong><strong>DB</strong>;Server=aseHost;Port=5000;Initial Catalog=testdb;User<br />

ID=sa;Password=xxx….”<br />

OleDbConnectionString = “<strong>Provider</strong>=<strong>ASE</strong><strong>OLE</strong><strong>DB</strong>;Data Source=ase1502;User ID=sa;….”<br />

The <strong>Sybase</strong> <strong>ASE</strong> Data Source Administrator (sybdrvadm.exe is a tool provided in the SDK under %SYB<strong>ASE</strong>%\<br />

DataAccess\bin or %SYB<strong>ASE</strong>%\DataAccess64\bin for Winx64) so you can create <strong>OLE</strong> <strong>DB</strong> Data Sources. These are stored<br />

in this same location by default as a text file with name of the Data Source followed by the extension “sod”. The Data<br />

Source name without the “sod” extension is used in the “Data Source” connection property.


This enables an application to reference the <strong>OLE</strong> <strong>DB</strong> data source through the “Data Source” connection property.<br />

Please note: The other panels are captured when configuring an <strong>ASE</strong> <strong>O<strong>DB</strong>C</strong> <strong>Driver</strong> with <strong>O<strong>DB</strong>C</strong> <strong>Driver</strong> Administrator<br />

tool. The panels are the same as for the <strong>Sybase</strong> <strong>ASE</strong> Data Source Administrator. There are slight differences in how<br />

the values are presented for selection. Shown here is the General tab from the <strong>Sybase</strong> <strong>ASE</strong> Data Source Administrator<br />

configurator tool:<br />

Compare it to the next page with the same panel used to configure the <strong>O<strong>DB</strong>C</strong> driver. (Service Name <strong>and</strong> BackEnd<br />

Type are not available with <strong>OLE</strong> <strong>DB</strong> <strong>Provider</strong>.)<br />

9


10<br />

General Tab<br />

Data Source Name: DSN as configured on the machine. This can be used as a logical reference to the data source.<br />

Description: A description of this particular data source. Used primarily for documentation purposes.<br />

Server Name (<strong>ASE</strong> Host Name) [server/Server]: Host where <strong>ASE</strong> resides.<br />

Server Port [port/Port]: Listener port of the <strong>ASE</strong>.<br />

Database Name [database/Database]: Default database for this data source connection.<br />

Logon ID [uid/UID]: Default logon ID for the data source.<br />

Service Name [servicename/ServiceName]: Not used for <strong>ASE</strong>. For DirectConnect server connections (MFC), this is the<br />

access service name. (Not available with <strong>OLE</strong> <strong>DB</strong> <strong>Provider</strong>)<br />

BackendType [backendtype]: Used for DirectConnect server (MFC) access service types (not available with <strong>OLE</strong> <strong>DB</strong><br />

<strong>Provider</strong>):<br />

DC <strong>DB</strong>2 Access Service<br />

DC TRS: Transaction Router Service<br />

MFC gatewayless: When using OpenServerConnect on the Mainframe<br />

Default is <strong>ASE</strong>.


Cursor Behavior<br />

Use Cursors [usecursor/UseCursor]: When checked (unchecked by default) uses <strong>ASE</strong> Forward_only cursors for SELECT<br />

statements.<br />

Test Connection: After you configure your data source, press this button to test the <strong>ASE</strong> connection.<br />

The fields are filled in with the values entered in the data source configuration. Press OK to connect to <strong>ASE</strong>.<br />

11


12<br />

Connection Tab<br />

Login Time Out [logintimeout/LoginTimeout]: The time, in seconds, <strong>O<strong>DB</strong>C</strong> driver waits for a response from the <strong>ASE</strong><br />

after it sends the login request. After the time interval (15 seconds by default), the driver will issue a TDS attention<br />

event, indicating to the <strong>ASE</strong> it no longer wants to wait for a response. The <strong>O<strong>DB</strong>C</strong> <strong>Driver</strong> will throw SQL_ERROR with<br />

message “The comm<strong>and</strong> has timed out.”<br />

High Availability Information<br />

Enable High Availability [hasession/HASession]: (Unchecked by default) When checked, the <strong>O<strong>DB</strong>C</strong> <strong>Driver</strong> will set flag<br />

on the login request to use <strong>ASE</strong> High Availability feature.<br />

(Default = 0)<br />

Alternate Servers [alternateservers/AlternateServers]: In establishing a connection, <strong>O<strong>DB</strong>C</strong> <strong>Driver</strong> by <strong>Sybase</strong> will first<br />

try to connect to the primary host <strong>and</strong> port defined in the General tab of the Adaptive Server Enterprise dialog box.<br />

If <strong>O<strong>DB</strong>C</strong> fails to establish a connection, <strong>O<strong>DB</strong>C</strong> will go through the list of hosts <strong>and</strong> ports specified in the Alternate<br />

Servers field. Example entries:<br />

<strong>Driver</strong>=AdaptiveServerEnterprise;server=server1;<br />

port=port1;UID=sa;PWD=;HASession=1;<br />

AlternateServers=server2:port2,...,serverN:portN;


When the primary server doesn’t response in the amount of time specified by LoginTimeout, the driver attempts to<br />

connect to server2:port2, <strong>and</strong> so on, until it connects successfully or exhausts the list.<br />

For information regarding the <strong>ASE</strong> Cluster Edition support refer to the New Features Open Server <strong>and</strong> SDK 15.0 for<br />

Windows, Linux, <strong>and</strong> UNIX document, under ESD#12.<br />

Server Name [secondaryserver/SecondaryServer]: The name or the IP address of the <strong>ASE</strong> server acting as a failover<br />

server in an active-active or active-passive setup.<br />

Server Port [secondaryport/SecondaryPort]: The port number of the <strong>ASE</strong> server acting as a failover server in an<br />

active-active or active-passive setup.<br />

Directory Service Information: This panel is used for alternate methods of determining the host <strong>and</strong> port for <strong>ASE</strong><br />

connectivity. This option allows for the use of an LDAP server or the interfaces file (SQL.INI for windows, interfaces<br />

for LINUX).<br />

URL [dsurl/DSURL]: The URL for the LDAP server, or the location to the interfaces file. Some examples are:<br />

LDAP: ldap://hostport/dn[?attrs[?scope[?filter[?userdn?userpass]]]]<br />

ldap://pvero-xp:389/dc=sybase,dc=com??one?sybaseServername=ase1252<br />

Interfaces: file://[path][?][servicename]<br />

file://C:\sybase\ini\SQL.INI<br />

Service Name [dsservicename/DSServiceName]: The Service Name of the LDAP <strong>Sybase</strong> server object. The default is<br />

an empty string.<br />

User ID [dsprincipal/DSPrincipal]: The user name used to authenticate on the LDAP server, if the LDAP server does<br />

not allow anonymous access. The principal can be specified in the DSURL as well.<br />

Use Quoted Identifiers [quotedidentifier/QuotedIdentifier]: Specifies if <strong>ASE</strong> treats character strings enclosed in<br />

double quotes as identifiers:<br />

•0 = do not enable quoted identifiers (default)<br />

•1 = enable quoted identifiers<br />

Set ANSI Null [ansinull/AnsiNull]: Strict <strong>O<strong>DB</strong>C</strong> compliance where you cannot use “= NULL.” Instead, you must use<br />

“IsNull.” Default is checked. Uncheck this if you use the “=NULL” in your SQL statements, especially the where clause.<br />

(Default =1)<br />

Enable Dynamic Prepare [dynamicprepare/DynamicPrepare]: When set to 1, the driver sends SQLPrepare calls to <strong>ASE</strong><br />

to compile/prepare. This can boost performance if you use the same query repeatedly. (Default =0)<br />

Normalize Unicode Strings [normalizewcharparams/NormalizeWCharParams]: Under certain circumstances, when<br />

the <strong>ASE</strong> is configured with “enable unicode normalization” set to 0, problems might occur with parameters set to TDS_<br />

LONGBINARY. Setting this property to “1” will send the parameters as TDS_VARCHAR. Problem occurs with possible<br />

error like:<br />

“Attempt to insert NULL value into column ‘column name’, table ‘table name’; column does not allow nulls. Update<br />

fails.”<br />

Originally discovered with use of Microsoft Replication. (Default=0)<br />

Cumulative Record Count [crc/CRC]: By default, the driver returns the total records updated when multiple update<br />

statements are executed in a stored procedure. This count will also include all updates happening as part of any<br />

triggers set on an update or an insert. Set this property to 0 if you want the driver to return only the last update<br />

count. (Default = 1)<br />

13


14<br />

Ignore Errors if Results are Pending [ignoreerrorsifrspending/IgnoreErrorsIfRSPending]: Specifies whether the driver<br />

is to continue processing or stop if error messages are present. When set to 1, the driver will ignore errors <strong>and</strong> continue<br />

processing the results if more results are available from the server. When set to 0, the driver will stop processing the<br />

results if an error is encountered even if there are results pending. (Default = 0)<br />

Encrypt Password [encryptpassword/EncryptPassword]: Specifies if password encryption is enabled:<br />

0 indicates password encryption is disabled,<br />

1 indicates password encryption is enabled.<br />

(Default = 0)<br />

Security Tab<br />

Secure Socket Layer<br />

This is used to enable SSL so the driver can connect to an <strong>ASE</strong> configured for SSL.<br />

Use SSL Encryption [encryption/Encryption]: The designated encryption. Possible values: ssl.<br />

(Default = empty)<br />

Trusted File [trustedfile/TrustedFile]: If encryption is set to ssl, this property should be set to the path to the Trusted<br />

File. (Default = empty)


Kerberos<br />

This is used for <strong>ASE</strong> configured to use Kerberos.<br />

Authentication Client [authenticationclient/AuthenticationClient]: Enables Kerberos authentication using one of<br />

these Kerberos providers (Default = empty, selecting none):<br />

mitkerberos<br />

cybersafekerberos<br />

activedirectory<br />

User Principal [userprincipal/UserPrincipal]: The user principal as configured in the Key Distribution Center (KDC).<br />

This is optional.<br />

Server Principal [serverprincipal/ServerPrincipal]: The logical name or the principal as configured in the Key<br />

Distribution Center (KDC).<br />

The <strong>ASE</strong> <strong>O<strong>DB</strong>C</strong> driver will use this information to negotiate Kerberos authentication with the configured KDC <strong>and</strong><br />

<strong>ASE</strong> server.<br />

Advanced Tab<br />

Buffer Pool Size [buffercachesize/BufferCacheSize]: Keeps the input / output buffers in pool. When large results will<br />

occur, increase this value to boost performance. (Default = 20)<br />

Text Size [textsize/TextSize]: The maximum size of binary or text data, in bytes, that will be sent over the wire.<br />

(Default = none, uses <strong>ASE</strong> default of 32768 bytes)<br />

15


16<br />

Application Name [applicationname/ApplicationName]: The name used by <strong>ASE</strong> to identify the client application.<br />

(Default = none)<br />

Client Host Name [clienthostname/ClientHostName]: Name of client host running the application using the <strong>O<strong>DB</strong>C</strong><br />

<strong>Driver</strong>. This value must be populated if you want to use it.<br />

Client Host Process [clienthostprocess/ClientHostProcess]: This value is actually determined internally <strong>and</strong><br />

automatically. It is the value of the process id belonging to the application using the <strong>O<strong>DB</strong>C</strong> <strong>Driver</strong>. This shows up in<br />

the TDS Login token <strong>and</strong> under the hostprocess column on the <strong>ASE</strong> sysprocesses table.<br />

Fetch Array Size [fetcharraysize/FetchArraySize]: Specifies the number of rows the driver retrieves when fetching<br />

results from the server. (Default = 25)<br />

Initialization String [initializationstring/InitializationString]: Session related SQL statements that can be sent to the<br />

<strong>ASE</strong> upon login time. Examples are set statements:<br />

set transaction isolation level 1 set textsize 64000 ….<br />

Language [language]: The language in which <strong>ASE</strong> returns error messages. (Default = empty, <strong>ASE</strong> uses English by<br />

default)<br />

Character Set [charset/CharSet]: Determines what character set is used for character translation between the client<br />

<strong>and</strong> <strong>ASE</strong>.<br />

User Specified: Enter the value to use if different from <strong>ASE</strong>. Example, if <strong>ASE</strong> is set to use iso_1 character set, <strong>and</strong><br />

client wants to use cp850, then check this item <strong>and</strong> enter value “cp850”. This sets charset=cp850.<br />

Server Default: Upon login negotiation client uses character set specified by the <strong>ASE</strong>. This sets<br />

charset=ServerDefault.<br />

Client Default: When this is selected, charset=ClientDefault, <strong>and</strong> this uses the charset based on the operating<br />

system settings. In this case, another property is set, [codepagetype/CodePageType] <strong>and</strong> is set to either ANSI (ansi) or<br />

OEM (oem).<br />

Packet Size [packetsize/PacketSize]: When Server Packet Size is checked, this sets enableserverpacketsize/<br />

EnableServerPacketSize to 1 [on by default], which enables <strong>ASE</strong> 15.0 or higher to choose an optimal packet<br />

size. The PacketSize property defaults to 512 bytes. When the property Restrict Maximum Packet Size<br />

[restrictmaximumpacketsize/ RestrictMaximumPacketSize] is set, <strong>ASE</strong> can only optimize to this value, unless <strong>ASE</strong><br />

maximum packet size is less than this value, which is set in the dialog for Server Packet Size, <strong>and</strong> is actually set in the<br />

PacketSize property. Therefore, if the Server Packet Size dialog is set to 2048, then PacketSize=2048.


Transaction Tab<br />

Server Initiated Transactions [serverinitiatedtransactions/ServerInitiatedTransactions]: When SQL_ATTR_<br />

AUTOCOMMIT is set to “1” Adaptive Server starts managing transactions as needed. The driver issues a “set chained on”<br />

comm<strong>and</strong> on the connection. Older <strong>O<strong>DB</strong>C</strong> <strong>Driver</strong>s do not use this feature <strong>and</strong> manage the job of starting transactions<br />

by calling begin tran. Set this property to “0” if you want to maintain the old behavior or require that your connection<br />

not use “chained” transaction mode. (Default = 1)<br />

Distribute Transactions: Used when <strong>ASE</strong>/DTM (Distribute Transaction Manager) is used on the <strong>ASE</strong>, which requires<br />

an <strong>ASE</strong>_DTM license.<br />

Tightly Coupled Transactions [tightlycoupledtransaction/ TightlyCoupledTransaction]: (Windows only) When using<br />

distributed transactions, if you are using two DSNs which connect to the same <strong>ASE</strong> server, set this to 1. See “Using<br />

Distributed Transactions” on page 41, in Chapter 3, “<strong>ASE</strong> Advanced Features.” (Default = 0)<br />

Distributed Transaction Protocol [distributedtransactionprotocol/ DistributedTransactionProtocol]: Allows the<br />

driver to use either an XA protocol or OleNative protocol when using distributed transactions. See “Using Distributed<br />

Transactions” on page 41, in Chapter 3, “<strong>ASE</strong> Advanced Features.” This is either of two values: XA or <strong>OLE</strong>. For windows<br />

clients only. (Default = XA)<br />

17


18<br />

About Tab<br />

This panel provides file (sybdrvodb.dll) version information. <strong>Driver</strong> Name is always “Adaptive Server Enterprise”.<br />

<strong>Driver</strong> Version relates to the file version of the sybdrvodb.dll. <strong>Driver</strong> <strong>O<strong>DB</strong>C</strong> Version is the version of <strong>O<strong>DB</strong>C</strong> API used with<br />

this driver.<br />

17 uninstaLLing OeM pROducts<br />

After successfully migrating to <strong>Sybase</strong>’s <strong>O<strong>DB</strong>C</strong> driver <strong>and</strong> <strong>OLE</strong> <strong>DB</strong> <strong>Provider</strong>, uninstalling <strong>and</strong> removing the OEM<br />

products will be necessary if you don’t wish to retain these older products. This section explains how this can be done<br />

manually if uninstalling doesn’t work with the old SDKs.<br />

<strong>Sybase</strong> <strong>ASE</strong> <strong>O<strong>DB</strong>C</strong> <strong>Driver</strong><br />

There are two areas to work with here, the files <strong>and</strong> the registry. For the files, the default location is %SYB<strong>ASE</strong>%\<br />

<strong>O<strong>DB</strong>C</strong>. There are no newer files from the <strong>ASE</strong> <strong>O<strong>DB</strong>C</strong> <strong>Driver</strong> installed here. When you’re satisfied that your migration<br />

went well <strong>and</strong> you have good backups of the system <strong>and</strong> the older <strong>O<strong>DB</strong>C</strong> folder, you can remove the folder <strong>and</strong> its<br />

contents.


In the above diagram %SYB<strong>ASE</strong>% = C:\<strong>Sybase</strong>\ocs\syb1251.<br />

PLE<strong>ASE</strong> NOTE: Be extremely careful when modifying the registry. Make sure you have a current backup before you<br />

do any deletions of the OEM <strong>O<strong>DB</strong>C</strong> driver.<br />

DSN Removal<br />

You can remove DSNs from the registry directly or by using the <strong>O<strong>DB</strong>C</strong> Data Source Administrator tool (<strong>O<strong>DB</strong>C</strong>AD32.<br />

exe). It’s recommended that you use the admin tool as it does a good job of removing the DSN from the registry.<br />

Simply look for your DSNs under the User <strong>and</strong> System tab, select the DSN <strong>and</strong> remove them with the “Remove” button.<br />

You need to be aware of all your User <strong>and</strong> System DSNs as well as possible File DSNs.<br />

The User <strong>and</strong> System DSNs are located in the registry under HKCU\Software\<strong>O<strong>DB</strong>C</strong>\<strong>O<strong>DB</strong>C</strong>.INI for User DSNs <strong>and</strong><br />

HKLM\Software\<strong>O<strong>DB</strong>C</strong>\<strong>O<strong>DB</strong>C</strong>.INI for System DSNs. Each active DSN is listed as a folder under the <strong>O<strong>DB</strong>C</strong>.INI folder.<br />

If you remove the folder here from the registry be aware there’s also another folder under <strong>O<strong>DB</strong>C</strong>.INI, “<strong>O<strong>DB</strong>C</strong> Data<br />

Sources”:<br />

Under this folder, look for the DSNs on the right with Data of “<strong>Sybase</strong> <strong>ASE</strong> <strong>O<strong>DB</strong>C</strong> <strong>Driver</strong>” <strong>and</strong> the Name of your<br />

targeted DSN. Once you remove the DSNs in this manner, they’ll no longer be available on the system.<br />

Another recommendation is to make sure you use the migration tool (Chapter 8) so you can use the same DSN<br />

names for your applications. Once you’re satisfied everything works you can remove the renamed DSN.<br />

19


20<br />

<strong>O<strong>DB</strong>C</strong> <strong>Driver</strong> removal<br />

To h<strong>and</strong>le the <strong>O<strong>DB</strong>C</strong> driver registry information there are two areas to work with: The <strong>Driver</strong> <strong>and</strong> the DSN (Data<br />

Sources). The driver name is “<strong>Sybase</strong> <strong>ASE</strong> <strong>O<strong>DB</strong>C</strong> <strong>Driver</strong>”. In the registry this folder is located under:<br />

HKLM\Software\<strong>O<strong>DB</strong>C</strong>\<strong>O<strong>DB</strong>C</strong>INST.INI\<strong>Sybase</strong> <strong>ASE</strong> <strong>O<strong>DB</strong>C</strong> <strong>Driver</strong><br />

This folder contains various items related to the <strong>O<strong>DB</strong>C</strong> <strong>Driver</strong> <strong>and</strong> in particular the folder location. If you are unsure<br />

of where the <strong>Sybase</strong> <strong>ASE</strong> <strong>O<strong>DB</strong>C</strong> <strong>Driver</strong> is installed, look here. Once this is removed you’ll be unable to create new<br />

<strong>Sybase</strong> <strong>ASE</strong> <strong>O<strong>DB</strong>C</strong> <strong>Driver</strong> DSNs.<br />

To finish with the driver removal, also remove the item under “HKLM\Software\<strong>O<strong>DB</strong>C</strong>\<strong>O<strong>DB</strong>C</strong>INST.INI\<strong>O<strong>DB</strong>C</strong> <strong>Driver</strong>s”:<br />

The item is “<strong>Sybase</strong> <strong>ASE</strong> <strong>O<strong>DB</strong>C</strong> <strong>Driver</strong>”. Once this is removed, as well as the aforementioned “<strong>Sybase</strong> <strong>ASE</strong> <strong>O<strong>DB</strong>C</strong><br />

<strong>Driver</strong>” folder, you’ll no longer be able to see it on your system, nor will you be able to create DSNs as “<strong>Sybase</strong> <strong>ASE</strong><br />

<strong>O<strong>DB</strong>C</strong> <strong>Driver</strong>”.<br />

Lastly, you can remove the %SYB<strong>ASE</strong>%\<strong>O<strong>DB</strong>C</strong> folder from the PATH statement. It’s not a requirement but it’ll free up<br />

space on the variable.<br />

OEM <strong>OLE</strong> <strong>DB</strong> <strong>Provider</strong> removal<br />

The removal of the OEM <strong>OLE</strong> <strong>DB</strong> <strong>Provider</strong>, “<strong>Sybase</strong> <strong>ASE</strong> <strong>OLE</strong> <strong>DB</strong> <strong>Provider</strong>”, is not as difficult. There are two steps to the<br />

task. The assumption here is that the user has already migrated the data sources to the SOD file extension (with the<br />

migrating tool), <strong>and</strong> now wishes to remove the <strong>Sybase</strong> <strong>ASE</strong> <strong>OLE</strong> <strong>DB</strong> <strong>Provider</strong>.


The default install location is %SYB<strong>ASE</strong>%\<strong>OLE</strong><strong>DB</strong>. The first thing to do is to un-register the provider using the<br />

regsvr32.exe utility, included in the Windows operating system. To do this, cd to the %SYB<strong>ASE</strong>%\<strong>OLE</strong><strong>DB</strong> folder,<br />

then issue:<br />

REGSVR32 /u SYDA<strong>ASE</strong>.DLL<br />

The next step is to remove the data sources <strong>and</strong> the files. By default the data source files <strong>and</strong> *.IDS files are located<br />

in the %SYB<strong>ASE</strong>%\<strong>OLE</strong><strong>DB</strong> folder. There’s a possibility the IDS files are located in an alternate folder. You can check this<br />

by running the <strong>Sybase</strong> <strong>ASE</strong> <strong>OLE</strong> <strong>DB</strong> Configuration Manager utility, sydaadm.exe, found in %SYB<strong>ASE</strong>%\<strong>OLE</strong><strong>DB</strong>.<br />

Select the “Tools” | “Options” | “Main Data Source Directory” options from the menu. You’ll see something like this:<br />

If the current directory displayed is different from %SYB<strong>ASE</strong>%\<strong>OLE</strong><strong>DB</strong>, you need to take note of this <strong>and</strong> remove it<br />

when you’re ready.<br />

The last thing to do is to remove the %SYB<strong>ASE</strong>%\<strong>OLE</strong><strong>DB</strong> directory:<br />

Once this is all done, you can remove the %SYB<strong>ASE</strong>%\<strong>OLE</strong><strong>DB</strong> folder from the PATH environment variable. This frees<br />

up space for products that require folders to be on PATH such as the <strong>ASE</strong> <strong>O<strong>DB</strong>C</strong> <strong>Driver</strong> <strong>and</strong> <strong>ASE</strong> <strong>OLE</strong> <strong>DB</strong> <strong>Provider</strong>.<br />

21


<strong>Sybase</strong>, Inc.<br />

Worldwide Headquarters<br />

One <strong>Sybase</strong> Drive<br />

Dublin, CA 94568-7902<br />

U.S.A<br />

1 800 8 sybase<br />

www.sybase.com<br />

As a review, the steps to remove the OEM products are to cleanup the registry, remove the old files <strong>and</strong> remove<br />

the folders from the system PATH environment variable. You’ll want to make sure you’re ready for this after your<br />

migration. Make sure you have current backups before you proceed with the removals.<br />

18 RefeRences<br />

The following references might be of further assistance in the migration process.<br />

• “<strong>Migration</strong> Mania: Tips for Migrating <strong>ASE</strong> <strong>O<strong>DB</strong>C</strong> <strong>Driver</strong> <strong>and</strong> <strong>OLE</strong> <strong>DB</strong> <strong>Provider</strong>”; ISUG <strong>Technical</strong> Journal, Issue #5,<br />

Sep/Oct, 2007.<br />

• “New Features Open Server 15.0 <strong>and</strong> SDK 15.0 for Microsoft Windows, Linux <strong>and</strong> UNIX”; http://infocenter.sybase.<br />

com/help/index.jsp?topic=/com.sybase.dc20155_1500/html/newfesd/title.htm&toc=/com.sybase.help.sdk_15.0/<br />

toc.xml<br />

• “<strong>ASE</strong> 15.0 <strong>O<strong>DB</strong>C</strong> <strong>Driver</strong> by <strong>Sybase</strong> User’s Guide”;<br />

http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.dc20116_1500/html/aseodbc/title.htm&toc=/<br />

com.sybase.help.sdk_15.0/toc.xml<br />

• “<strong>ASE</strong> 15.0 <strong>OLE</strong> <strong>DB</strong> <strong>Provider</strong> User’s Guide”;<br />

http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.dc00075_1500/html/oledb/title.htm&toc=/com.<br />

sybase.help.sdk_15.0/toc.xml<br />

Copyright © 2009 <strong>Sybase</strong>, Inc. All rights reserved. Unpublished rights reserved under U.S. copyright laws. <strong>Sybase</strong> <strong>and</strong><br />

the <strong>Sybase</strong> logo are trademarks of <strong>Sybase</strong>, Inc. or its subsidiaries. All other trademarks are the property of their respective<br />

owners. ® indicates registration in the United States. Specifications are subject to change without notice. 03/09

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!