Précédent   Forum des professionnels en informatique > Bases de données > Oracle > SQL
SQL Forum d'entraide sur le SQL pour Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 13/12/2007, 12h14   #1
Membre du Club
 
Inscription : mars 2005
Messages : 163
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 163
Points : 63
Points : 63
Par défaut [10g] mais où sont mes contraintes

Bonjour à tous

Voila j'ai créé une table de test pour laquelle j'ai un champ primary key et un autre en not null. Ces contraintes testées par des insert fonctionnent très bien mais choses étonnantes quand je lance la requête ci dessous je n'ai aucunes lignes retournées.

Code :
1
2
3
SELECT constraint_name, constraint_type 
FROM dba_constraints
WHERE table_name LIKE 'usr_test.testtable';
En fait je cherche la bonne manière d'interroger les contraintes existantes pour une table.

une idée ?

d'avance merci beaucoup de votre aide
grome est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2007, 12h21   #2
Membre habitué
 
Avatar de LinuxUser
 
Inscription : avril 2007
Messages : 450
Détails du profil
Informations forums :
Inscription : avril 2007
Messages : 450
Points : 131
Points : 131
Pourquoi tu ne cherche pas la description de ta table dans le dictionnaire?
Les contraintes d'integrités y seront indiquées.
LinuxUser est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2007, 12h27   #3
McM
Expert Confirmé Sénior
 
Inscription : juillet 2003
Messages : 3 453
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 3 453
Points : 4 215
Points : 4 215
Les noms de table sont en majuscule dans la base.
__________________
More Code : More Bugs. Less Code : Less Bugs
McM est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2007, 14h35   #4
Membre du Club
 
Inscription : mars 2005
Messages : 163
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 163
Points : 63
Points : 63
Citation:
Envoyé par McM Voir le message
Les noms de table sont en majuscule dans la base.
non c'est pareil mais merci quand même sinon pour le dico je sais pas trop comment l'interrogé, j'ai bien une liste de toute les vues système mais c'est un peu déroutant bon ben je continue mes recherches...

si je fais un
Code :
DESC 'usr_test.testtable';
j'ai bien la description de ma table et on devine les constraints avec les not null qui apparaisse mais ce n'est qu'un bout de ce que je veux obtenir avec la requete ci dessus.
grome est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2007, 14h35   #5
Expert Confirmé Sénior
 
Avatar de mnitu
 
Homme Marius Nitu
Ingénieur développement logiciels
Inscription : octobre 2007
Messages : 3 319
Détails du profil
Informations personnelles :
Nom : Homme Marius Nitu
Localisation : France, Marne (Champagne Ardenne)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : octobre 2007
Messages : 3 319
Points : 5 837
Points : 5 837
Et usr_test et probablement le owner la table testtable.
mnitu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2007, 14h37   #6
Membre du Club
 
Inscription : mars 2005
Messages : 163
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 163
Points : 63
Points : 63
Citation:
Envoyé par mnitu Voir le message
Et usr_test et probablement le owner la table testtable.
oui c'est çà.

et j'ai aussi essayé un

Code :
1
2
3
SELECT constraint_name, constraint_type 
FROM user_constraints 
WHERE table_name LIKE 'usr_test.testtable';
grome est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2007, 14h44   #7
Membre régulier
 
Inscription : mai 2007
Messages : 173
Détails du profil
Informations personnelles :
Âge : 42
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : mai 2007
Messages : 173
Points : 70
Points : 70
salut,

sous oracle :

Code :
SELECT * FROM USER_CONSTRAINTS WHERE table_name = 'table';
P.
pdelorme est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2007, 14h44   #8
Rédacteur/Modérateur
 
Avatar de orafrance
 
Inscription : janvier 2004
Messages : 15 861
Détails du profil
Informations personnelles :
Âge : 35

Informations forums :
Inscription : janvier 2004
Messages : 15 861
Points : 16 212
Points : 16 212
on t'as déjà dit que c'était en majuscule

Code :
1
2
3
SELECT constraint_name, constraint_type 
FROM user_constraints 
WHERE table_name = 'TESTTABLE';
ou :

Code :
1
2
3
4
SELECT constraint_name, constraint_type 
FROM all_constraints 
WHERE table_name = 'TESTTABLE'
AND r_owner = 'USR_TEST';
orafrance est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2007, 14h51   #9
Membre du Club
 
Inscription : mars 2005
Messages : 163
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 163
Points : 63
Points : 63
Citation:
Envoyé par orafrance Voir le message
on t'as déjà dit que c'était en majuscule
désolé je me suis laisser abuser (débutant que je suis) par le résultat "aucune ligne sélectionnée"
D'habitude j'ai un "table ou vue inexistante"

C'est bon j'ai capté ... Merci beaucoup
grome est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h30.


 
 
 
 
Partenaires

Hébergement Web