comment savoir sur quelle colonne,la séquence est-elle appliquée?
J'ai récupérer toutes les séquences avec leur nom de table avec le nom de la colonne sur laquelle séquence est appliqué
.Certains comment j'ai réussi à récupérer nom de la table correspondant à la séquence étant
dans ma base de données de séquence est stocké avec un prénom comme nom de table
à partir du dictionnaire de données(all_sequences et all_tables) .
S'il vous plaît laissez-moi savoir comment récupérer nom de la colonne correspondante aussi si possible!!
Voir ma réponse à une question précédente sur ce sujet: stackoverflow.com/questions/2363210/...
OriginalL'auteur Vineet | 2010-06-17
Vous devez vous connecter pour publier un commentaire.
Dans Oracle, une séquence est un objet indépendant, il n'est pas associée à une table ou d'une colonne. Par exemple, vous pouvez exécuter cette requête pour obtenir une liste des séquences:
Et lorsque vous créez une séquence, vous remarquerez qu'il n'y a rien dans la création de la SÉQUENCE de la syntaxe pour indiquer que vous souhaitez associer avec une table ou une colonne.
Une séquence est simplement un générateur de nombre, il ne se soucie pas ce que vous faites avec le nombre généré à partir d'elle (c'est à dire si vous insérez la valeur de la séquence dans une table, etc.), il est juste là pour prévoir que le numéro unique.
De sorte qu'il est impossible de le dire pour une colonne donnée en ce que la séquence a été utilisé (le cas échéant) pour générer la valeur de la colonne.
OriginalL'auteur dcp
Vous pouvez souvent "deviner" à une corrélation en regardant le LAST_NUMBER dans all_sequences et le SQL (ce qui regarde le nombre le plus élevé pour les colonnes numériques définies comme faisant partie de la clé primaire).
Mais c'est une bonne idée d'adopter un standard de nommage qui indique la corrélation (par exemple, le même que le table_name avec un _SEQ sur la fin).
OriginalL'auteur Gary Myers
Voir dcp réponse.
Cependant, une séquence sera normalement utilisé pour générer une clé unique pour la table, il correspond à - essayez de regarder pour les clés primaires et/ou un index unique sur la table de correspondance.
désolé, je n'aurais pas dit "normalement". Cependant, dans Vineet cas, il semble que si les séquences ne sont corrélés à des tables spécifiques. J'espère juste qu'il n'y a pas plus d'une séquence par table...
Comment définissez-vous "Correspond à" et de "correspondance"? Pourquoi est-ce plus qu'une seule séquence par table une mauvaise chose?
que faites-vous fixé pour son cache?
une séquence a un cache clause? Vous êtes à l'aide de 1 séquence pour l'ensemble d'un schéma et je n'ai pas exploré l'effet de cache? Ok, c'est donc une très faible simultanéité de la base de données? Pas beaucoup de simultanée des inserts?
OriginalL'auteur