IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Oracle Discussion :

SQL Oracle: Diff. comportement des fonctions 9i et 10g


Sujet :

Oracle

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 4
    Par défaut SQL Oracle: Diff. comportement des fonctions 9i et 10g
    Bonjour,

    Je m'apprête à faire une migration de SQL Oracle 9i à SQL Oracle 10g. Je
    cherche à relever les différences de comportement des fonctions SQL Oracle 9i en oRCALE 10g.

    En dehors des standards ascii, certaines commandes SQL propres à Oracle seraient permisives en Oracle 9i plutôt qu'en Oracle 10 g.

    Quelqu'un aurait-il fait une telle étude?
    Si oui, puissiez vous me fournir (help) la liste des fonctionnalités SQL oracle 9i dont le comportement change en SQL oracle 10g?
    Ou encore ou trouver la documentation recensant toutes les fonctionnalités dont le comportement change?
    Si c'est un site, oracle je présume, auriez-vous le lien exact? J'ai cherché depuis trois jours, mais en vain.
    Quelles sont les commandes SQL marchant sous 9i qui ne marcheraient pas en 10g?

    Merci d'avance de votre collaboration.

  2. #2
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    en principe il y a une compatibilité ascendante... éventuellement on peut avoir des différences avec les CLOB après la 9.2.0.5. (avec SUBSTR notamment)... mais c'est tout ce que je connais.

  3. #3
    Rédacteur

    Homme Profil pro
    Consultant / formateur Oracle et SQL Server
    Inscrit en
    Décembre 2002
    Messages
    3 461
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant / formateur Oracle et SQL Server

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 461
    Par défaut
    Citation Envoyé par Enzo27
    Bonjour,

    Je m'apprête à faire une migration de SQL Oracle 9i à SQL Oracle 10g. Je
    cherche à relever les différences de comportement des fonctions SQL Oracle 9i en oRCALE 10g.

    En dehors des standards ascii, certaines commandes SQL propres à Oracle seraient permisives en Oracle 9i plutôt qu'en Oracle 10 g.

    Quelqu'un aurait-il fait une telle étude?
    Si oui, puissiez vous me fournir (help) la liste des fonctionnalités SQL oracle 9i dont le comportement change en SQL oracle 10g?
    Ou encore ou trouver la documentation recensant toutes les fonctionnalités dont le comportement change?
    Si c'est un site, oracle je présume, auriez-vous le lien exact? J'ai cherché depuis trois jours, mais en vain.
    Quelles sont les commandes SQL marchant sous 9i qui ne marcheraient pas en 10g?

    Merci d'avance de votre collaboration.
    Dans la doc Oracle, la plupart des "volumes" débutent par une rubrique intitulée "what's new in..."
    Par exemple : http://download-uk.oracle.com/docs/c...ql.htm#sthref5

  4. #4
    Membre chevronné Avatar de Wurlitzer
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    469
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 469
    Par défaut
    Je suis moi aussi dans un processus de migration d'une appli Oracle8i vers la 10g.

    Pour l'instant, je n'ai noté aucune différence de fonctionnement. Et tant mieux ! ! !

    Par contre à la compilation, le compilateur 10g est plus strict en bloque sur des approximation qui était toléré par la 8i. Du genre déclarer un NUMBER(40) alors que techniquement la taille maxi est NUMBER(38) passait en 8i alors que ca bloque en 10g.

    Mais soit rassuré sur un bon millier de le procédures, fonctions et autre packages j'ai pas eu plus d'une dizaine d'erreur et tout a été réglé en moins d'une heure.

  5. #5
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    cela peut-être arrangé avec l'event 10933 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    alter session set events='10933 trace name context forever, level 512';
    cela permet d'utiliser le parser 8i, c'est pratique pour les migrations mais ça ne peut être qu'un contournement temporaire le temps de modifier le code

  6. #6
    Membre chevronné Avatar de Wurlitzer
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    469
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 469
    Par défaut
    Chut ! ! Il ne faut surtout pas le dire aux developpeurs. Ils ne vont plus vouloir mettre a jour leur code ! ! !

  7. #7
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    ouais mais quand tu as un progiciel genre Oracle Appli et que tu peux pas toucher au standard ça peux servir

  8. #8
    Membre chevronné Avatar de Wurlitzer
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    469
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 469
    Par défaut
    Et bien voilà une différence 8i/10g qui m'embete.

    J'ai un programme C++ avec une connexion ODBC (Microsoft) qui utilise des VARCHAR2(4000).

    Avec un client Oracle 8i et une base 8i -> les VARCHAR2(4000) passent

    Avec un client 10g et une base 8i, ou un client 8i et une base 10g ou (et c'est mon but) un client 10g et une base 10g -> les VARCHAR2(4000) ne passent plus la limite est à VARCHAR2(1000) ! !

    Et la j'avoue que je ne sais pas de quel coté chercher... Si vous avez des idées, je suis preneur.

    Sur ce bon WE a tous

  9. #9
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    CLOB

  10. #10
    Membre chevronné Avatar de Wurlitzer
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    469
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 469
    Par défaut
    Malheureusement non ! ! Avec mon vieux driver ODBC Microsoft (et je ne peux pas en changer) on ne peut pas utiliser de CLOB

  11. #11
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    bah oui, il faut aussi migrer le driver

  12. #12
    Membre chevronné Avatar de Wurlitzer
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    469
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 469
    Par défaut
    J'en rêve mais il y a deux contraintes. Ce drivers est déployé sur des milliers de poste chez certains clients pas très au point pour faire ces mise a jours.

    Et aussi qu'ODBC est une norme pas très normé ! ! ! C'est a dire qu'il n'est pas possible de transformer de manière transparente un divers Microsoft (qui n'est plus mis a jour depuis très longtemps) par un driver Oracle (qui lui évolue). Les appel de fonction ne sont pas les même ! ! !

Discussions similaires

  1. comportement des fonctions d'accès au detail
    Par mederik dans le forum Cognos
    Réponses: 0
    Dernier message: 03/08/2010, 16h09
  2. SQL Server 2008 : Comportement des composants SSIS
    Par Fleur-Anne.Blain dans le forum Contribuez
    Réponses: 0
    Dernier message: 08/07/2009, 09h32
  3. Réponses: 2
    Dernier message: 31/08/2006, 16h17
  4. Réponses: 3
    Dernier message: 16/06/2006, 16h36
  5. [ORACLE 8i] Index sur des fonctions
    Par miloux32 dans le forum Oracle
    Réponses: 1
    Dernier message: 02/02/2006, 17h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo