Making the Move from Sybase to SQL Server

At this point, you can rerunsp_dbcmptlevel to verify that the pubs database was changed correctly:

sp_dbcmptlevel pubs

It returns the following:

The current compatibility level is 65.

In addition to the examples in previous table, the differences in the compatibility levels extend to reserved words too.

Both Sybase and SQL Server have lists of reserved words that cannot be used to name objects in the database. The lists for the two products are similar, but not exactly the same.

This issue could make the conversion from Sybase to SQL Server a little more difficult because objects that can be created in Sybase might not be able to be created in SQL Server.

The following is a list of SQL Server reserved words that are not reserved words in Sybase.

Note: Any objects in your Sybase database with names in this list must be renamed before a MSSQL Server conversions.

Transaction Management Modes

BACKUP COLUMN COMMITTED CONTAINS CONTAINSTABLE
CROSS CURRENT_DATE CURRENT_TIME CURRENT_TIMESTAMP CURRENT_USER
DENY DISTRIBUTED FILE FLOPPY FREETEXT
FREETEXTTABLE FULL IDENTITYCOL INNER JOIN
LEFT NOCHECK OPENDATASOURCE OPENQUERY OPENROWSET
OUTER PERCENT PIPE REPEATABLE REPLICATION
RESTORE RESTRICT RIGHT ROWGUIDECOL SERIALIZABLE 
SESSION_USER SYSTEMUSER TAPE TOP UNCOMMITTED
UPDATETEXT

Sybase

SQL Server

Set chained [  on  :  off  ] Set implicit_transactions [on  :  off  ] 

To determine the current transaction mode using:

Sybase

Example:

SELECT @@tranchained
GO    

Here are the results:

0    indicates that the default unchained mode is being used. 

1    indicates that the connection is running in chained mode

To determine the current transaction mode using:

SQL Server

Example:  

IF (@@options & 2)  >  0
PRINT on
ELSE
PRINT off

Here are the results:

0   off

>0  on

Continues…

Leave a comment

Your email address will not be published.