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 :

Oracle SQL : Comment changer l'ordre de tri par défaut


Sujet :

Oracle

  1. #1
    Membre du Club
    Inscrit en
    Décembre 2002
    Messages
    74
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 74
    Points : 44
    Points
    44
    Par défaut Oracle SQL : Comment changer l'ordre de tri par défaut
    J'ai deux serveurs qui tournent sous Oracle10g. L'un est dans un context US, l'autre EU, sinon pas de différence.
    Un soft Delphi7 est en erreur "wrong number or types or arguments in call.." sur le serveur US alors qu'il tourne parfaitement sur le serveur EU
    J'utilise le composant DBExpress TSQLStoredProc pour executer une procedure dans un package Oracle.
    Lors d'essais j'ai constaté que l'ordre d'affichage des params est PAR_CURS,PAR_PARAMS,PAR_DATATYPE sur le serveur US alors que sur le serveur EU l'ordre d'affichage est PAR_DATATYPE,PAR_PARAMS,PAR_CURS
    ce qui explique le message d'erreur (ordre figé dans le programme)
    Mais pourquoi l'ordre n'est-il pas le même ?
    J'ai alors tracé la requête SQL qui prépare les paramètres :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Select *
    FROM SYS.ALL_ARGUMENTS A 
    WHERE (A.DATA_LEVEL = 0) 
    AND (A.OBJECT_NAME = 'ProcedureName'
    AND A.PACKAGE_NAME = 'PackageName'
    On remarque qu'il n'y a pas d'ordre de tri (ORDER BY) dans la requête SLQ; l'ordre de tri est donc tributaire de la configuration d'Oracle.
    Ma question : comment changer l'ordre de tri par defaut en jouant sur les paramètres (NLS_... ou autres) de configuration d'Oracle (au niveau Database, Instance ou session ?)

    Rq:
    - Ce problème est apparu lors d'un export base EU puis import sur base US des ressources Packages/Tables/Data pour le owner de travail
    - J'ai modifié le programme pour tester avec l'ordre PAR_CURS,PAR_PARAMS,PAR_DATATYPE
    mais le message suivant apparaît "Références de fournisseurs circulaires non autorisées"

  2. #2
    Membre expert
    Avatar de LeoAnderson
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 938
    Points : 3 199
    Points
    3 199
    Par défaut
    par défaut, il n'y a pas de tri. Si vous voulez un tri, il faut le dire et avoir donc une clause ORDER BY.

    Vous pouvez jouer avec NLS_SORT (BINARY ou ASCII) mais je vous le déconseille franchement.

    il est préférable de commencer par extraires les conf NLS sur les 2 machines.

Discussions similaires

  1. Réponses: 6
    Dernier message: 06/07/2009, 13h19
  2. Changer l'ordre de tri par défaut d'un GridView
    Par wazodnuit dans le forum ASP
    Réponses: 1
    Dernier message: 02/08/2007, 13h30
  3. [T-SQL] comment changer le format de l'ouput ?
    Par jm.alfonsi dans le forum Adaptive Server Enterprise
    Réponses: 3
    Dernier message: 05/03/2007, 11h05
  4. Ordre de tri par défaut
    Par garou34 dans le forum Installation
    Réponses: 4
    Dernier message: 21/09/2006, 15h54
  5. Réponses: 4
    Dernier message: 10/04/2006, 10h27

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