Migrazione da Informix 4GL ad Oracle PL/SQL
Il nostro tool Ispirer MnMTK è capace di convertire applicazioni da Informix 4GL ad Oracle PL/SQL.
Perchè Ispirer MnMTK
Ispirer MnMTK può aiutarvi a convertire la vostra applicazione Informix 4GL automaticamente. Scegliendo Ispirer MnMTK potete anche eliminare i rischi di conversione e ridurre notevolmente la quantità di sforzi interni necessari per la migrazione.
I nostri vantaggi principali:
- ll team esperto e qualificato: i tecnici d’Ispirer hanno grande esperienza in realizzazione di progetti di migrazione di varia complessità.
- Approccio orientato al cliente e Personalizzazione rapida: personalizziamo il nostro strumento di migrazione in modo che permetta di soddisfare pienamente le esigenze di business dei nostri clienti; aggiustamenti gratuiti durante 1-2 giorni lavorativi;
- Collaborazione pre-vendita: dimostriamo la conversione completa durante la fase di valutazione prima che prenderete la decisione finale.
- Buon prezzo: offriamo la politica di prezzatura flessibile;
-
Conversione ottimizzata: il codice facilmente gestito senza il middleware di Ispirer usato dopo la conversione.
Valutazione
Valutazione ci aiuta ad estimare gli sforzi e i costi di migrazione. Per iniziare i discorsi di collaborazione e fare la valutazione approssimativa, si prega di riempire:
Questionario per Migrazione da Informix 4GL ad Oracle PL/SQL.
Ispirer Soluzione di Migrazione
Informix 4GL ad Oracle PL/SQL Richiedere
Ispirer Soluzione di Migrazione
Informix 4GL ad Oracle PL/SQL Servizi
Toolkit
Caratteristiche di conversione
- Tabelle e dati
- Converte definizioni di colonne - tipi di dati, valori default, restrizioni NOT NULL
- Converte restrizioni di integrità - chiavi primarie ed esterne, restrizioni unique e check
- Supporta colonne serial (sequenze e trigger sono generati in Oracle)
- Risolve le parole riservate e conflitti di identifiers
- Trasferisce dati
- Indici e viste
Per saperne di più, visitate la nostra pagina Migrazione di database da Informix a Oracle.
Conversione di codice da Informix 4GL a Oracle PL/SQL
- Converte funzioni Informix 4GL (*.4gl) verso funzioni/procedure PL/SQL (*.sql)
Informix 4GL:
FUNCTION sample_func(s_char)
#-------------------#
define
s_char CHAR(100),
i SMALLINT,
j SMALLINT,
r_char CHAR(100)
let r_char = " "
FOR i = 1 TO 100
IF (s_char[i,i] = " ") THEN
continue FOR
ELSE
let r_char = s_char[i,100]
exit FOR
END IF
END FOR
RETURN r_char
END FUNCTION
Oracle PL/SQL:
FUNCTION sample_func(s_char IN CHAR)
---------------------#
RETURN CHAR
AS
i NUMBER(5,0) := 0;
j NUMBER(5,0) := 0;
r_char CHAR(100) := ' ';
BEGIN
r_char := SUBSTRB(' ',1,100);
FOR SWR_i IN 1 .. 100
LOOP
i := SWR_i;
IF (SUBSTRB(s_char,i,1)) THEN
continue;
ELSE
r_char := SUBSTRB
(SUBSTRB(s_char,i,101 - i),1,100);
exit;
END IF;
END LOOP;
RETURN r_char;
END;
Converte commenti:
I commenti con una linea sola
Informix 4GL:
#Comment
Oracle PL/SQL:
--Comment
Commenti con alcune linee
Informix 4GL:
{
Comments
}
Oracle PL/SQL:
/*
Comments
*/
Converte tipi di dati
Tipo Informix 4GL |
Tipo di dato Oracle PL/SQL |
char(length) |
CHAR(length) |
smallint |
NUMBER(5,0) |
integer |
NUMBER(10,0) |
date |
DATE |
decimal(n,m) |
NUMBER(n,m) |
Converte i record
Record come id.*
Informix 4GL
define c0 record LIKE ctl_f0.*
Oracle PL/SQL:
c0 ctl_f0%rowtype;
Record con la lista di record
Informix 4GL:
define w_just record
b_yy INTEGER,
b_mm INTEGER,
b_dd INTEGER
END record
Usage:
Let wjust.* = c0.*
Oracle PL/SQL:
TYPE SWT_w_just IS record(b_yy NUMBER(10,0),
b_mm NUMBER(10,0),b_dd NUMBER(10,0));
w_just SWT_w_just;
Usage:
wjust := c0;
Array record con la lista di record
Informix 4GL:
define nbw array[4,60] OF record
nb_g_kbn CHAR(1),
nb_g_nymd CHAR(7)
END record
Usage:
let nbw[1,i].*=nbw[4,i].*
Oracle PL/SQL:
TYPE SWT_nbw IS record(nb_g_kbn CHAR(1),nb_g_nymd CHAR(7));
TYPE SWT_nbw2 IS VARRAY(60) OF SWT_nbw;
TYPE SWT_nbw3 IS VARRAY(4) OF SWT_nbw2;
nb1w SWT_nbw3;
Usage:
nbw(1)(i) := nbw(4)(i);
Converte funzioni incorporate, espressioni e predicati
|
Tipo Informix 4GL |
Tipo di dato Oracle PL/SQL |
Ascii funzione |
let a = ascii 223 |
a:= chr(223); |
Clipped funzione |
let a = b clipped |
a:= RTRIM(b); |
Date funzione |
let a = date(b) |
a:= to date(b); |
Day funzione |
let a = day(b) |
a:= EXTRACT(day from b); |
Mdy funzione |
let a = mdy(b,c,d) |
a := TO_DATE(TO_CHAR(b) || '-' || TO_CHAR(c) || '-' || TO_CHAR(d),'mm-dd-yy'); |
Month funzione |
let a = month(b) |
a := EXTRACT(month from b); |
Upshift funzione |
let a = upshift(b) |
SET a = UPPER(b) |
Using funzione |
let a = b using "######&" |
a := to_char(b,’9999990’); |
Year funzione |
let a = year(b) |
a := EXTRACT(year from b); |
Concat espressione |
let a = b, “cd”,d |
a := b || “cd” || d; |
Mod espressione |
let a = b mod 2 |
a := mod(b, 2); |
Substring espressione |
let a = b[2,2] |
a := substr(b,2,1); |
True/False espressione |
let a = true
let a = false
|
a := 1;
a := 0;
|
Matches predicato |
if (n not matches "[0123456789]") then |
if (not regexp_like(n,'[0123456789]')) then |
True predicato |
while(true) |
while(1 = 1) |
Converte istruzioni della logica di business
Per esempio,
Per il range loop
Informix 4GL:
FOR i = 1 TO 10…
…
END FOR
Oracle PL/SQL:
FOR i IN 1..10
LOOP
…
END LOOP;
Istruzione Case
Informix 4GL:
CASE a
WHEN 1
…
WHEN 2
…
otherwise
…
…
END CASE
Oracle PL/SQL:
CASE a
WHEN 1
THEN
…
WHEN 2
THEN
…
ELSE
…
…
END CASE
Cursore Declare
Informix 4GL:
DECLARE cur_n0 cursor FOR
SELECT n0_ch FROM nkin_a
WHERE (n0_kau_no = s_kau_no)
AND (n0_cd = s_cd)
Oracle PL/SQL:
cursor cur_n0 IS SELECT n0_ch FROM nkin_a
WHERE (n0_kau_no = s_kau_no)
AND (n0_cd = s_cd);
Per ulteriori informazioni si prega di contattarci.
|