# rules for converting Informix SQL to SQLServer -compatible syntax # # This one is used for the ODBC version engine.... # It may get merged with the INFORMIX-SQLSERVER.cnv version.... # DOUBLE_TO_SINGLE_QUOTES MATCHES_TO_LIKE TABLE_ALIAS_AS COLUMN_ALIAS_AS ESCAPE_PLAN MONEY_AS_DECIMAL ANSI_UPDATE_SYNTAX CONSTRAINT_NAME_BEFORE SUBSTRING_FUNCTION = SUBSTRING STRIP_ORDER_BY_INTO_TEMP SELECT_INTO_TEMP_INTO_HASH EMULATE_FOR_UPDATE CREATE_TEMP_AS_CREATE_HASH INSERT_INTO_AS_SELECT_INTO FIX_OUTER_JOINS DTYPE_ALIAS SMALLFLOAT = FLOAT DTYPE_ALIAS DATETIME DAY TO DAY=SMALLINT DTYPE_ALIAS DATETIME DAY TO FRACTION(2)=CHAR(14) DTYPE_ALIAS DATETIME DAY TO FRACTION=CHAR(14) DTYPE_ALIAS DATETIME DAY TO HOUR=CHAR(5) DTYPE_ALIAS DATETIME DAY TO MINUTE=CHAR(8) DTYPE_ALIAS DATETIME DAY TO SECOND=CHAR(11) DTYPE_ALIAS DATETIME HOUR TO FRACTION(2)=CHAR(11) DTYPE_ALIAS DATETIME HOUR TO FRACTION=CHAR(11) DTYPE_ALIAS DATETIME HOUR TO HOUR=SMALLINT DTYPE_ALIAS DATETIME HOUR TO MINUTE=CHAR(5) DTYPE_ALIAS DATETIME HOUR TO SECOND=CHAR(8) DTYPE_ALIAS DATETIME MINUTE TO FRACTION(1)=CHAR(7) DTYPE_ALIAS DATETIME MINUTE TO FRACTION=CHAR(8) DTYPE_ALIAS DATETIME MINUTE TO MINUTE=SMALLINT DTYPE_ALIAS DATETIME MINUTE TO SECOND=CHAR(5) DTYPE_ALIAS DATETIME MONTH TO DAY=CHAR(5) DTYPE_ALIAS DATETIME MONTH TO FRACTION(1)=CHAR(16) DTYPE_ALIAS DATETIME MONTH TO FRACTION=CHAR(17) DTYPE_ALIAS DATETIME MONTH TO HOUR=CHAR(8) DTYPE_ALIAS DATETIME MONTH TO MINUTE=CHAR(11) DTYPE_ALIAS DATETIME MONTH TO MONTH=SMALLINT DTYPE_ALIAS DATETIME MONTH TO SECOND=CHAR(14) DTYPE_ALIAS DATETIME SECOND TO FRACTION(2)=CHAR(4) DTYPE_ALIAS DATETIME SECOND TO FRACTION=CHAR(4) DTYPE_ALIAS DATETIME SECOND TO SECOND=SMALLINT DTYPE_ALIAS DATETIME YEAR TO DAY=CHAR(10) DTYPE_ALIAS DATETIME YEAR TO FRACTION(2)=CHAR(20) DTYPE_ALIAS DATETIME YEAR TO FRACTION(3)=CHAR(20) DTYPE_ALIAS DATETIME YEAR TO FRACTION(5)=CHAR(20) DTYPE_ALIAS DATETIME YEAR TO FRACTION=CHAR(20) DTYPE_ALIAS DATETIME YEAR TO HOUR=CHAR(13) DTYPE_ALIAS DATETIME YEAR TO MINUTE=CHAR(16) DTYPE_ALIAS DATETIME YEAR TO MONTH=CHAR(7) DTYPE_ALIAS DATETIME YEAR TO SECOND=CHAR(16) DTYPE_ALIAS DATETIME YEAR TO YEAR=SMALLINT DTYPE_ALIAS INTERVAL YEAR TO YEAR=CHAR(20) DTYPE_ALIAS INTERVAL YEAR (4) TO YEAR=CHAR(20) DTYPE_ALIAS INTERVAL YEAR TO MONTH=CHAR(20) DTYPE_ALIAS INTERVAL YEAR (4) TO MONTH=CHAR(20) DTYPE_ALIAS INTERVAL MONTH TO MONTH=CHAR(20) DTYPE_ALIAS INTERVAL MONTH (2) TO MONTH=CHAR(20) DTYPE_ALIAS INTERVAL DAY TO DAY=CHAR(20) DTYPE_ALIAS INTERVAL DAY (2) TO DAY=CHAR(20) DTYPE_ALIAS INTERVAL DAY TO HOUR=CHAR(20) DTYPE_ALIAS INTERVAL DAY (2) TO HOUR=CHAR(20) DTYPE_ALIAS INTERVAL DAY TO MINUTE=CHAR(20) DTYPE_ALIAS INTERVAL DAY (2) TO MINUTE=CHAR(20) DTYPE_ALIAS INTERVAL DAY TO SECOND=CHAR(20) DTYPE_ALIAS INTERVAL DAY (2) TO SECOND=CHAR(20) DTYPE_ALIAS INTERVAL DAY TO FRACTION=CHAR(20) DTYPE_ALIAS INTERVAL DAY (2) TO FRACTION=CHAR(20) DTYPE_ALIAS INTERVAL DAY TO FRACTION(2)=CHAR(20) DTYPE_ALIAS INTERVAL DAY (2) TO FRACTION(2)=CHAR(20) DTYPE_ALIAS INTERVAL HOUR TO HOUR=CHAR(20) DTYPE_ALIAS INTERVAL HOUR (2) TO HOUR=CHAR(20) DTYPE_ALIAS INTERVAL HOUR TO MINUTE=CHAR(20) DTYPE_ALIAS INTERVAL HOUR (2) TO MINUTE=CHAR(20) DTYPE_ALIAS INTERVAL HOUR TO SECOND=CHAR(20) DTYPE_ALIAS INTERVAL HOUR (2) TO SECOND=CHAR(20) DTYPE_ALIAS INTERVAL HOUR TO FRACTION=CHAR(20) DTYPE_ALIAS INTERVAL HOUR (2) TO FRACTION=CHAR(20) DTYPE_ALIAS INTERVAL HOUR TO FRACTION(2)=CHAR(20) DTYPE_ALIAS INTERVAL HOUR (2) TO FRACTION(2)=CHAR(20) DTYPE_ALIAS INTERVAL MINUTE TO MINUTE=CHAR(20) DTYPE_ALIAS INTERVAL MINUTE (2) TO MINUTE=CHAR(20) DTYPE_ALIAS INTERVAL MINUTE TO SECOND=CHAR(20) DTYPE_ALIAS INTERVAL MINUTE (2) TO SECOND=CHAR(20) DTYPE_ALIAS INTERVAL MINUTE TO FRACTION=CHAR(20) DTYPE_ALIAS INTERVAL MINUTE (2) TO FRACTION=CHAR(20) DTYPE_ALIAS INTERVAL MINUTE (2 ) TO FRACTION(1)=CHAR(20) DTYPE_ALIAS INTERVAL MINUTE (2) TO FRACTION(1)=CHAR(20) DTYPE_ALIAS INTERVAL SECOND TO SECOND=CHAR(20) DTYPE_ALIAS INTERVAL SECOND (2) TO SECOND=CHAR(20) DTYPE_ALIAS INTERVAL SECOND TO FRACTION=CHAR(20) DTYPE_ALIAS INTERVAL SECOND (2) TO FRACTION=CHAR(20) DTYPE_ALIAS INTERVAL SECOND TO FRACTION(2)=CHAR(20) DTYPE_ALIAS INTERVAL SECOND (2) TO FRACTION(2)=CHAR(20) DTYPE_ALIAS NVARCHAR=VARCHAR OMIT_NO_LOG USE_INDICATOR #REPLACE_EXPR rowid = oid #REPLACE_SQLCONST today = date(now()) REPLACE_SQLCONST today = getdate() REPLACE_SQLFUNC year = date_part('YEAR',%s::timestamp with time zone) REPLACE_SQLFUNC month = date_part('MONTH',%s::timestamp with time zone) REPLACE_SQLFUNC day = date_part('DAY',%s::timestamp with time zone) REPLACE_SQLFUNC dow = date_part('DOW',%s::timestamp with time zone) #REPLACE_SQLCONST user='someuser' REPLACE_SQLFUNC trim = rtrim(ltrim(%s)) REPLACE_SQLFUNC length = len(%s) REPLACE_SQLFUNC nvl = isnull(%s) REPLACE_SQLFUNC ascii = chr(%s) REPLACE_SQLFUNC ord = ascii(%s) REPLACE_EXPR current year to fraction(3) = now() REPLACE_EXPR current year to fraction(5) = now() REPLACE_EXPR current year to second = now() # No obvious replacement for these - so effectively remove them REPLACE_COMMAND SET EXPLAIN ON = REPLACE_COMMAND SET EXPLAIN OFF = REPLACE_COMMAND UPDATE STATISTICS = VACUUM REPLACE_COMMAND BEGIN WORK = BEGIN TRANSACTION REPLACE_COMMAND ROLLBACK WORK = ROLLBACK TRANSACTION REPLACE_COMMAND COMMIT WORK = COMMIT TRANSACTION # We can only replace whole statements with a REPLACE_COMMAND # so we need to use a REPLACE on its own for this one.. REPLACE UPDATE STATISTICS FOR TABLE = VACUUM REPLACE_COMMAND SET ISOLATION TO DIRTY READ = REPLACE_COMMAND SET ISOLATION TO REPEATABLE READ = REPLACE_COMMAND SET ISOLATION DIRTY READ = REPLACE_COMMAND SET ISOLATION REPEATABLE READ = REPLACE_COMMAND SET ISOLATION CURSOR STABILITY = REPLACE_COMMAND SET ISOLATION COMMITTED READ = REPLACE_COMMAND SET LOCK MODE TO NOT WAIT = REPLACE_COMMAND SET LOCK MODE TO WAIT = REPLACE_COMMAND SET LOCK MODE TO WAIT %s = REPLACE_COMMAND SET LOCK MODE TO WAIT 1 = REPLACE_COMMAND SET LOCK MODE TO WAIT 2 = REPLACE_COMMAND SET LOCK MODE TO WAIT 3 = REPLACE_COMMAND SET LOCK MODE TO WAIT 4 = REPLACE_COMMAND SET LOCK MODE TO WAIT 5 = REPLACE_COMMAND SET LOCK MODE TO WAIT 6 = REPLACE_COMMAND SET LOCK MODE TO WAIT 7 = REPLACE_COMMAND SET LOCK MODE TO WAIT 8 = REPLACE_COMMAND SET LOCK MODE TO WAIT 9 = REPLACE_COMMAND SET LOCK MODE TO WAIT 10 = REPLACE_COMMAND SET LOCK MODE TO WAIT 15 = REPLACE_COMMAND SET LOCK MODE TO WAIT 20 = REPLACE_COMMAND SET LOCK MODE TO WAIT 25 = REPLACE_COMMAND SET LOCK MODE TO WAIT 30 = REPLACE_COMMAND SET EXPLAIN ON = EXECUTE_PROCEDURE_AS_EXEC # Ignore any errors when closing a cursor # it may already have been closed... IGNORE_CLOSE_ERROR OMIT_INDEX_CLUSTER OMIT_INDEX_ORDER #IGNORE_OWNER STRIP_QUOTES_FROM_OWNER ESQL_UNLOAD_FULL_PATH ESQL_AFTER_INSERT = A4GLESQL_after_insert(); ESQL_AFTER_UPDATE = A4GLESQL_after_update(); ESQL_AFTER_DELETE = A4GLESQL_after_delete(); EMULATE_INSERT_CURSOR IGNORE_DTYPE_VARCHAR_MIN # Quote an SQL expression in the form DATETIME(2001-01-01) to be DATETIME("2001-01-01") (give the db a chance to handle with a SP) CHAR_TO_DATETIME=char_to_dt # Quote an SQL expression in the form DATETIME(2001-01-01) to be DATETIME("2001-01-01") (give the db a chance to handle with a SP) CHAR_TO_INTERVAL=char_to_iv DATETIME_EXTEND_FUNCTION=dt_extend INTERVAL_EXTEND_FUNCTION=iv_extend # Remove any columns for an GRANT UPDATE (...) ... SIMPLE_GRANT_UPDATE SIMPLE_GRANT_SELECT # Remove any (...) for serial (autoincrements) columns NO_SERIAL_START_VALUE RENAME_TABLE_AS_ALTER_TABLE RENAME_COLUMN_AS_ALTER_TABLE SWAP_SQLCA62 OMIT_UPDATE_TABLE #DATE_STRING_TO_CAST_DMY #DATE_STRING_TO_CAST_DATE DATE_STRING_TO_YMD DATE_AS_ISO_DATE_STRING REPLACE_SQLCONST USER=current_user OUTER_JOINS_NB SQLSERVERTEMPS REPLACE syscolatt.left = syscolatt.[left]