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] Générer un UUID


Sujet :

Oracle

  1. #1
    Membre habitué
    Inscrit en
    Novembre 2004
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 469
    Points : 167
    Points
    167
    Par défaut [Oracle] Générer un UUID
    Bonjour à tous,

    je me posais une question :
    Y a t-il un moyen par une fonction sql standard oracle ou une requête sql de générer un uuid dans le champ d'une table ?


    merci pour vos réponses

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 075
    Points
    19 075
    Par défaut
    en créant une séquence par exemple

  3. #3
    Membre habitué
    Inscrit en
    Novembre 2004
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 469
    Points : 167
    Points
    167
    Par défaut
    en fait je veux avoir un identifiant unique mais "mondial" d'ou ma question alors qu'une sequence le même nombre peut se retrouver aillerus

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 075
    Points
    19 075
    Par défaut
    mondial... j'imagine que tu parles de tes bases de données pas d'une base de données lambda qui existe quelque part dans le monde

  5. #5
    Membre habitué
    Inscrit en
    Novembre 2004
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 469
    Points : 167
    Points
    167
    Par défaut
    en fait en language de programmation l'uuid correspond à un identifiant unique dans le monde il se base sur l'heure du poste
    Il y a des algorithme la dessus

    donc si je veux exporter ma table et que quelqu'un la récupère ailleurs et qu'il l'intègre dans sa base je veux garder le lien éventuel

    donc je voulais savoir s'il existait une fonction sous oracle qui permette de réaliser ceci sinon tant pis

    en espérant mettre fait comprendre

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 075
    Points
    19 075
    Par défaut
    je n'en connais pas

  7. #7
    Membre habitué
    Inscrit en
    Novembre 2004
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 469
    Points : 167
    Points
    167
    Par défaut
    tant pis alors

    faudra peut être se faire une procédure ou fonction oracle

    pour générer cet identifiant universel

    merci mais si tu as de nouvelles infos je suis preneur
    car en php par exemple il y a une focntion pour générer ceci

  8. #8
    Membre averti

    Inscrit en
    Septembre 2003
    Messages
    425
    Détails du profil
    Informations forums :
    Inscription : Septembre 2003
    Messages : 425
    Points : 398
    Points
    398
    Par défaut
    Utilise
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT SYS_GUID()  FROM DUAL
    doc. ORACLE

  9. #9
    Membre averti 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
    Points : 408
    Points
    408
    Par défaut
    Honnetement je ne connaissais pas.

    Y a un article assez complet la dessus a :

    http://www.oracle-base.com/articles/9i/UUID9i.php

    Par contre, y a un truc que je ne comprend pas avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    SQL> select  sys_guid()  from dual;
     
    SYS_GUID()
    --------------------------------
    15C6A00924294016E043C0A8412B4016
     
    SQL> /
     
    SYS_GUID()
    --------------------------------
    15C6A009242A4016E043C0A8412B4016
     
    SQL> /
     
    SYS_GUID()
    --------------------------------
    15C6A009242B4016E043C0A8412B4016
     
    SQL> /
     
    SYS_GUID()
    --------------------------------
    15C6A009242C4016E043C0A8412B4016
     
    SQL>
    Me donne toujours la meme valeur. C'est donc un identifiant unique de l'instance. C'est ca ? Il faut lui ajouter une sequence si on veut un identifiant unique pour une ligne. J'ai bon ?

  10. #10
    Membre habitué
    Inscrit en
    Novembre 2004
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 469
    Points : 167
    Points
    167
    Par défaut
    Moi j'ai pas le même résultat à chaque fois ....

    Ca à l'air de fonctionner

  11. #11
    Membre averti 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
    Points : 408
    Points
    408
    Par défaut
    Je suis en 8.1.7.4. C'est peut etre de la que ca vient ?

  12. #12
    Membre averti

    Inscrit en
    Septembre 2003
    Messages
    425
    Détails du profil
    Informations forums :
    Inscription : Septembre 2003
    Messages : 425
    Points : 398
    Points
    398
    Par défaut
    Citation Envoyé par Wurlitzer
    Je suis en 8.1.7.4. C'est peut etre de la que ca vient ?
    Non c'est pas les mêmes !!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    SQL> select  sys_guid()  from dual;
    
    SYS_GUID()
    --------------------------------
    15C6A00924294016E043C0A8412B4016
    
    SQL> /
    
    SYS_GUID()
    --------------------------------
    15C6A009242A4016E043C0A8412B4016
    
    SQL> /
    
    SYS_GUID()
    --------------------------------
    15C6A009242B4016E043C0A8412B4016
    
    SQL> /
    
    SYS_GUID()
    --------------------------------
    15C6A009242C4016E043C0A8412B4016
    
    SQL>

  13. #13
    Membre averti 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
    Points : 408
    Points
    408
    Par défaut
    Ouuuuuuuuups .

    Merci, la prochaine fois je m'acheterais des lunettes

Discussions similaires

  1. Générer un fichier XML à partir d'oracle forms
    Par FST_PFE dans le forum Forms
    Réponses: 1
    Dernier message: 10/06/2008, 15h18
  2. Générer de l'activité sous oracle 10g
    Par corwin dans le forum Administration
    Réponses: 5
    Dernier message: 28/05/2008, 15h50
  3. Réponses: 4
    Dernier message: 06/02/2008, 14h45
  4. [PHP]Générer un UUID
    Par lenoil dans le forum Langage
    Réponses: 2
    Dernier message: 02/06/2006, 15h39
  5. Générer un UUID
    Par lor dans le forum Langage
    Réponses: 1
    Dernier message: 08/07/2005, 13h21

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