|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||||
|
Invité de passage
![]() dalila albaInscription : octobre 2010 Messages : 8 ![]() |
Salut a tous , je suis confrotée a un petit soucis , j'aimerai afficher le nom d'une contrainte qui est dans une table , là par exemple j'aimerai supprimer cette contrainte qui est une clé primaire . Le truc c'est que je me souviens comment je l'ai appellé : C1 , mais je voudrais savoir au cas ou (on ne sait jamais si un jour je ne me souvenais plus
donc la au début j'ai attribué une clé primére a la table 'etudiant' : Code :
et là je voudrais afficher le nom de la contrainte de la table pour pouvoir la supprimer après, bien sur j'ai déja essayé mais ça n'a pas marché : Code :
Code :
|
||||||
|
|
00
|
|
|
#2 | ||
|
Membre Expert
![]() Inscription : août 2008 Messages : 1 271 ![]() |
Peut être un problème de casse, utilise SHOW TABLES pour vérifier la casse du nom de la table :
Code :
Es tu sûr d'utiliser mysql et pas plutôt oracle ? As tu des messages d'erreurs ? Parce que oracle n'a pas de INFORMATION_SCHEMA, c'est plutôt all_constraints (et tous les noms sont stockés en majuscule, enfin sauf si lors de la création on utilise les doubles quotes comme "TeSt" alors le nom de la table doit respecter la casse) |
||
|
|
00
|
|
|
#3 | |||
|
Invité de passage
![]() dalila albaInscription : octobre 2010 Messages : 8 ![]() |
Citation:
Oui j'utilise mysql , j'ai écrit shéma information parce que je l'ai lu dans un site,c'est pour cela , donc forcément la solution que tu m'as donné ne marche pas |
|||
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() Inscription : août 2008 Messages : 1 271 ![]() |
Ben j'ai fait mon test sur mysql donc je pense que c'est valide, non ?
Mon intérrogation sur oracle c'était juste au cas où, car moi dans le prompt c'est écrit mysql> et pas SQL> par contre mon prompt oracle écrit généralement SQL> |
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() dalila albaInscription : octobre 2010 Messages : 8 ![]() |
Oui ça marche ..mais quand je veux l'appliquer a mon exemple sur l'étudiant , ça marche pas..
|
|
|
00
|
|
|
#6 |
![]() ![]() |
Avec notre boule de cristal, nous allons voir :
1) Le texte de la requête qui ne "marche pas" ; 2) Pourquoi ça ne "marche pas". À mon avis, c'est parce qu'elle n'a pas de jambes mais il y a peut-être une autre cause ? Ma boule de cristal est un peu floue...
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
|
10
|
|
|
#7 |
|
Membre Expert
![]() Inscription : août 2008 Messages : 1 271 ![]() |
|
|
|
00
|
|
|
#8 |
|
Membre Expert
![]() Eric DureuilDéveloppeur informatique Inscription : avril 2011 Messages : 874 ![]() |
salut,
si tu cherches une contrainte, c'est `information_schema.TABLE_CONSTRAINTS` ? mais la différence avec ta syntaxe, regarde c'est la CASSE !!! c'est pour ça qu'il te dit que les tables n'existent pas dans tes 2 dernières requêtes... essaye pour voir... selon les versions de mysql et systèmes d'exploitation tu devra peut-être mettre aussi information_schema en majuscule...
__________________
Eric Dureuil, développeur web, c/c++, java indépendant soyons ![]() pensez à mettre et
|
|
|
00
|
|
|
#9 |
|
Invité de passage
![]() dalila albaInscription : octobre 2010 Messages : 8 ![]() |
Salut eric , j'ai demandé a ma prof qui m'a répondu qu'il valait mieux que la prochaine fois je nomme mes contraintes selon la clé , par exemple "contnum",merci en tous cas, je pense avoir compris mon erreur..
|
|
|
00
|
|
|
#10 |
|
Membre Expert
![]() Eric DureuilDéveloppeur informatique Inscription : avril 2011 Messages : 874 ![]() |
oui pour avoir des noms d'index et de contraintes parlants
on utilise souvent des noms genre:
faut juste se rappeler que les noms (table, contraintes, bd, etc...) sont limités à 64 caractères tu peux ne pas les nommer mais alors tu as des noms générés à partir de caractères alphanumériques imbuvable pour un pauvre humain... par contre attention à la casse, surtout sous linux
__________________
Eric Dureuil, développeur web, c/c++, java indépendant soyons ![]() pensez à mettre et
|
|
|
10
|
|
|
#11 |
|
Invité de passage
![]() dalila albaInscription : octobre 2010 Messages : 8 ![]() |
Merci beaucoup Eric tu m'en as appris des choses , je serai plus prudente la prochaine fois
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com