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

PowerAMC Discussion :

Power AMC definir le nom des contraintes par defaut


Sujet :

PowerAMC

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Inscrit en
    Juin 2007
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 1
    Par défaut Power AMC definir le nom des contraintes par defaut
    Bonjour,

    Mes Refrences ont des noms de contrainte par defaut de cette facon:
    FK_<nom table>_REFERENCE_<nom table>
    Comment puis je changer la generation des nom de contrainte par defaut ?

    Merci

  2. #2
    Expert éminent
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 212
    Billets dans le blog
    16
    Par défaut
    Bonsoir AAAWBBBWCCC,


    Je comprends votre problème, car j’y ai été confronté, aussi ai-je décidé de creuser. Je vous fait part des résultats de mes recherches...

    A titre d’exemple, J’ai une table Boisson et une table Entree entre lesquelles est établie une relation nommée FaireEntrer :





    Génération SQL (Microsoft SQL Server 2000) :
    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
     Create Table Boisson (
       IdBoisson            Int                  Not null,
       NomBoisson           Varchar(48)          Not null,
       Constraint PK_Boisson Primary Key  (IdBoisson)
    );
    
    Create Table Entree (
       IdBoisson            Int                  Not null,
       IdEntree             Int                  Not null,
       Date                 Datetime             Not null,
       Quantite             Int                  Not null,
       Constraint PK_Entree Primary Key  (IdBoisson, IdEntree),
       Constraint FK_Entree_Faireentr_Boisson Foreign Key (IdBoisson)
          References Boisson (IdBoisson)
             On Delete Cascade
    );
    Le nom de contrainte FK_Entree_Faireentr_Boisson ne me convient pas, je souhaite faire disparaître les 3 premiers caractères "FK_"

    Je procède ainsi :

    1) Barre d’outils \ SGBD \ Éditer le SGBD courant (Microsoft SQL Server 2000).

    Dans l’arborescence, clic sur Script \ Objects \ Reference \ ConstName ce qui provoque l’affichage du modèle de nom de contrainte généré pour l'instruction "Create Table Entree" :





    2) Je vire les 3 premiers caractères, comme souhaité.





    3) quand PowerAMC pose la question :





    Prudemment, je réponds Non.
    Je pense que si vous répondez Oui, vous avez intérêt à d’abord sauvegarder le fichier de ressources concerné...
    Ayant répondu Non, j’ai observé qu’en sauvegardant le MPD puis en l’ouvrant à nouveau, les modifs sont toujours actives. En revanche, quand je ferme PowerAMC, elles sont perdues.

    Plus avant. Je raffine mes options...

    =>

    Déchiffrage de la chaîne de caractères "FK_%.c8:CHILD%_%.c9:REFR%_%.c8:PARENT%"

    Par référence aux paramètres dans l’aide :

    "FK_" : Constante

    "%.c8:CHILD%" : ".c8:" signifie : Initiale en majuscule et les lettres suivantes en minuscules, à concurrence de 8 caractères maxi (cf. référence (2) ci-dessous).

    "CHILD" Variable utilisée pour générer le nom de la table enfant (en l’occurrence : Entree). (cf. référence (1)).
    Comme l’initiative de l’outil ne me convient pas, parce que je veux voir une génération de code SQL avec très exactement les majuscules et minuscules que j’ai choisies, j’élimine la mise en forme en codant ainsi :
    "%CHILD%" au lieu de "%.c8:CHILD%".

    "_" : Constante

    "%.c9:REFR%" : Code généré pour la référence FaireEntrer : "Entree_Faireentr". (cf. référence (1)). Je remplace par "%REFRNO%", car je peux ainsi numéroter les contraintes plutôt que les nommer, ce qui n’est pas inutile quand il en existe plus d’une entre 2 tables (nomenclatures par exemple) et que l’on n’a pas envie de voir figurer le nom de la contrainte.

    "%.c8:PARENT%" : Code généré pour la table parent. (cf. référence (1)). Comme pour CHILD, je vire ".c8:"

    Puis je permute "%REFRNO%" et "%PARENT%". Au final, la contrainte

    FK_Entree_Faireentr_Boisson

    est devenue la suivante :

    Entree_1_Boisson


    Modèle final de nom de contrainte :






    Références de l’aide en ligne :

    (1) PowerAMC MPD - Guide de l'utilisateur \ CHAPITRE 14. Variables dans PowerAMC \ Liste des variables de PowerAMC \ Variables de référence.

    (2) PowerAMC MPD - Guide de l'utilisateur \ CHAPITRE 14. Variables dans PowerAMC \ Liste des variables de format de PowerAMC.


    A vous de jouer !
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

  3. #3
    Invité de passage
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1
    Par défaut constname
    Si la l'élément constname n'apparait pas, faite un clic droit sur Référence -> Ajouter des éléments... -> Cochez constname

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2005
    Messages : 53
    Par défaut
    Bonjour,

    J'ai le même problème de nommage des contraintes, mais j'utilise PowerAMC v6.

    Est ce que quelqu'un sait faire cette manipulation avec cette version de PowerAMC ?

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    849
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 849
    Par défaut
    Je suis sur Power AMC 12. Et j'ai le même problème.

    Je n'arrive pas à trouver:
    Barre d’outils \ SGBD \ Éditer le SGBD courant (Microsoft SQL Server 2000).
    ni
    faite un clic droit sur Référence -> Ajouter des éléments... -> Cochez constname

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    291
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2005
    Messages : 291
    Par défaut
    C'est parfait c'est ce que je cherchais ...

  7. #7
    Membre confirmé
    Homme Profil pro
    Développeur décisionnel
    Inscrit en
    Février 2012
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur décisionnel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2012
    Messages : 126
    Par défaut Modifier la valeur des references dans PowerAMC
    Bonjour,

    Je cherche à modifier l'affichage des references aussi via ConstName.

    Je souhaite avoir : NomCléCible = NomCléSource.

    J'ai testé : %.U8:CHILD%(%PKEYCOLUMNS%) = %.U8ARENT%(%FKEYCOLUMNS%) mais ça ne fonctionne pas.

    Coment faire ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 11/02/2009, 11h39
  2. Nom des contraintes
    Par heidi28 dans le forum SQL
    Réponses: 2
    Dernier message: 01/12/2008, 19h23
  3. retrouver les noms des contraintes d'une table
    Par Agoye dans le forum Access
    Réponses: 1
    Dernier message: 12/12/2007, 23h40
  4. Réponses: 4
    Dernier message: 30/05/2006, 17h21
  5. passage nom des contraintes de MPD au script de création BD
    Par marièmdiaw dans le forum Décisions SGBD
    Réponses: 4
    Dernier message: 14/01/2005, 13h18

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