Comparaison des différences MySQL et Oracle 2 Syntaxe de base
Syntaxe de base
Nombre MYSQL Les variables sont déclarées de différentes manières li _index NOMBRE := 0 DECLARE li_index INTEGER DEFAULT 0 1. mysql utilise DECLARE pour définir les variables locales
La syntaxe pour définir les variables est : DECLARE var_name[,...] type [DEFAULT value] à donner Les variables fournissent une valeur par défaut et doit contenir une clause DEFAULT. La valeur peut être spécifiée sous forme d’expression et n’a pas besoin d’être une constante. S'il n'y a pas de clause DEFAULT, la valeur initiale est NULL.
2 Les variables sont affectées de différentes manières lv_inputstr := iv_inputstr SET lv_inputstr = iv_inputstr 1. L'affectation de variable Oracle utilise :=
mysql utilise le mot-clé set lors de l'utilisation de l'affectation lors de l'attribution d'une valeur à un. variable Utilisez "=".
3 L'instruction de saut (exit) est différente EXIT; LEAVE nom de la procédure 1. oracle : Si l'instruction de sortie est dans la boucle, quittez la boucle actuelle. n'est plus dans la boucle, quittez la boucle en cours. Procédure ou méthode.
Mysql : Si l'instruction Leave est suivie du nom de la procédure stockée, quittez la procédure stockée actuelle. Si l'instruction Leave est suivie du nom de la procédure stockée. nom de l'étiquette, quittez l'étiquette actuelle
while condition loop
exit;
end loop; >leave label_name;
end while label_name; <🎜> Attribuer une valeur au curseur La définition Mysql du curseur provient du Manuel de référence Mysql 5.1 20.2.11.1 Déclarez le curseur. 5 Définir le TYPE de tableau unpacklist_type IS TABLE OF VARCHAR2(2000) INDEX BY BINARY_INTEGER; Vous pouvez utiliser une table temporaire au lieu d'un tableau oracle,
Vous pouvez également boucler et diviser des caractères pour remplacer le tableau oracle. Actuellement, vous pouvez utiliser un tableau oracle temporaire. table pour remplacer le tableau oracle.
Pour plus de détails, veuillez consulter 2.4 dans <<2009002-OTMPPS-Difficult Questions-0001.doc>> méthodes "-- message" ou "/**….*/"
ou "/**/" "-- message" ou " /**/"
7 La date et l'heure intégrées les formats de fonction sont différents Format d'heure Oracle : aaaa-MM-jj hh:mi:ss Format d'heure Mysql : %Y-%m-%d %H:%i:%s 1. Les champs de date MYSQL sont divisés en DATE et TIME Deux types.
Le champ de date ORACLE n'a que DATE, qui contient les informations sur l'année, le mois, le jour, l'heure, les minutes et les secondes
Obtenez l'heure système de la base de données actuelle dans Oracle sous la forme SYSDATE, précise en secondes
8 Ajout et soustraction de date Ajoutez N jours à l'heure actuelle : sysdate. N
Soustraire N jours de l'heure actuelle : sysdate- N Ajout de date : date_add(now(), INTERVAL 180 DAY)
Soustraction de date : date_sub('1998-01-01 00 : 00:00', intervalle '1 1:1:1' day_second )
9 Différents opérateurs de concaténation de chaînes result := v_int1||v_int2; set result = concat(v_int1,v_int2); | pour connecter des chaînes, et vous pouvez également utiliser la fonction concat. Mais la fonction concat d'Oracle ne peut connecter que deux chaînes.
Mysql utilise la méthode concat pour connecter des chaînes. tel que
mysql> select concat(' 10'); Le résultat est : 10.
mysql> ); Le résultat est : 112233aa
2. " ||"est l'opération ET dans Mysql
.
10 Définir différents curseurs CURSOR l_bk_cur IS
SELECT B.BK_HDR_INT_KEY, B.BK_NUM
FROM ES_SR_DTL_VRB A, ES_BK_HDR B
WHERE A.BK_HDR_INT _KEY = B. BK_HDR_INT_KEY
AND b.BK_STATUS != ES_BK_PKG.g_status_can
AND A.SR_HDR_INT_KEY = ii_sr_hdr_int_key; DECLARE l_bk_cur CURSOR
POUR SELECT B.BK_HDR_INT_KEY , B.BK_NUM
DE ES_SR_DTL_VRB A, ES_BK_HDR B
WHERE A.BK_HDR_INT_KEY = B.BK_HDR_INT_KEY
AND b.BK_STATUS != ES_BK_PKG.g_status_can
AND A.SR _HDR_INT_KEY = ii_sr_hdr_int_key;
Pour plus de détails, voir & lt; & lt; 2009002-OTMPPS-DIFFICult Questions-0001.doc & GT; Oracle et Oracle et Oracle et Utilisation dans mysql La méthode est la même