|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre habitué
![]() Inscription : novembre 2005 Messages : 318 ![]() |
Bonjour.
Je bloque sur un problème con. J'ai une base de données Access, qui n'a pas été créée chez nous, mais par le client final de l'application que l'on développe. Dans sa base de données, il a mis des clefs étrangères (ce qui est un bon point pour lui, j'aurais tant à dire sur la structure de sa base de données, mais je sais aussi reconnaître ses qualités Or, il a légitimement utilisée cette colonne en tant que clef étrangère d'une autre table. Mon problème est que pour dropper la colonne en question, je dois commencer par dropper la contrainte qui a été mise en place sur la table de destination. Étant limité par le fait que je ne peux pas aller chez tout les utilisateurs finaux et leur dire "Bonjour, je passe vite fait chez vous, je fais une modif dans la base de données, et je vous laisse travailler ensuite", il faut que je passe par l'interface d'update que nous avons développée dans l'IHM. Je passe donc par une requête SQL pour essayer de supprimer la clef étrangère : Sauf que je ne sais pas comment retrouver le nom de ladite contrainte. J'ai cherché dans Access, j'ai cherché via un objet DAO, mais je n'ai pas trouvé. Quelqu'un sais où, ou comment je peux trouver ça ? PS : Je peux faire un peu de dev pour ça, y a pas de problème, j'ai accès à plusieurs environnement de dev et langages de programmation (C/C++/C#/Objective C, VB.Net, Fortran, Delphi, VBA, Emacs-LISP, Python, Perl, ... et j'en passe... bref, j'ai du choix )EDIT : J'ai voulu contourner le problème en droppant et en recréant la table avec la clef étrangère, mais je suis bloqué |
|
|
00
|
|
|
#2 |
![]() ![]() |
Bonjour
Pourquoi vouloir passer par du code et ne pas le faire manuellement puisque c'est ponctuel ? Il faut supprimer la relation et la recréer. Philippe
__________________
Détaillez vos questions, sinon vous aurez des réponses erronées et vous irez tout droit dans le et lisez les règles sinon ![]() Si vous pensez commencer sans un livre, oublier : livres pour débuter Vous pouvez consulter mes articles sur Access et PowerPoint Le blog Office. Inutile de m'envoyer un MP pour des questions techniques ou de me relancer , je n'y répondrais pas. |
|
|
00
|
|
|
#3 |
|
Membre habitué
![]() Inscription : novembre 2005 Messages : 318 ![]() |
Parce que la base est duppliquée chez plusieurs utilisateurs finaux, et que concrètement, je n'ai pas le droit de les rencontrer, tout simplement
|
|
|
00
|
|
|
#4 | ||
|
Membre du Club
![]() Pierre SERANTConsultant ERP Inscription : février 2009 Messages : 40 ![]() |
bonjour,
en vba tu trouveras toute les relations de la base access dans la collection des relations. currentdb.Relations() Code :
|
||
|
|
00
|
|
|
#5 |
|
Membre habitué
![]() Inscription : novembre 2005 Messages : 318 ![]() |
J'ai fini par trouver la fameuse table MSysRelationships, et pour les clefs et les index (qui me posaient aussi problème) je suis passé par ADOX et C#. Du coup, je me suis fait une petite interface pour afficher les clefs, les relations et les index.
Merci pour le coup de main, je note pour plus tard si j'ai pas d'accès à C#
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com