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

MS SQL Server Discussion :

Génération automatique ?


Sujet :

MS SQL Server

  1. #1
    Membre Expert

    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    1 377
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 377
    Par défaut Génération automatique ?
    Bonjour,

    Pour la modélisation de ma base j'ai utilisé PowerAMC (j'ai fais le MCD et le MPD) et donc je me demandais si je devais utiliser la génération automatique que propose l'outil, il me propose une génération pour SQL Server 2000 et moi j'utilise 2005, pensez-vous que ça pose un problème ? J'ai testé et j'ai vue, qu'il généré pas mal de chose (les contraintes et tout cela), le risque est que je passe plus de temps à modifier le script généré, que d'en faire un nouveau (au total j'ai 20 tables).

    D'après vos différentes expériences que me conseillez-vous de faire ?

    Autre question, en général faites vous toutes vos règles de gestion au niveau de la base ? Ou vous faites les contraintes principales en BD et le reste dans la DAL (la couche d'accès de mon application) ?

    Merci à tous ceux qui tenteront d'éclaircir mes horizons.

    Bonne journée à tous.
    Échouer, c'est avoir la possibilité de recommencer de manière plus intelligente.

    Twitter Blog Mon site

    Mon article sur l'agilité

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    22 010
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 22 010
    Billets dans le blog
    6
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Pour la modélisation de ma base j'ai utilisé PowerAMC (j'ai fais le MCD et le MPD) et donc je me demandais si je devais utiliser la génération automatique que propose l'outil, il me propose une génération pour SQL Server 2000 et moi j'utilise 2005, pensez-vous que ça pose un problème ?
    Il n'y a pas de grosses différences entre 2000 et 2005 à ce niveau. D'autre part vous pouvez créer un drivers 2005 à partir de celui de 2000.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Autre question, en général faites vous toutes vos règles de gestion au niveau de la base ? Ou vous faites les contraintes principales en BD et le reste dans la DAL (la couche d'accès de mon application) ?
    Si la règle touche la validation des données alors impérativement en contraintes dans la base.

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  3. #3
    Membre Expert

    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    1 377
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 377
    Par défaut
    Je me suis peut être mal exprimé (probablement même), mais ma plus grande intérogation réside sur le fait d'utiliser ou pas la génération automatique de base de données. Par exemple, le script généré contient un nombre trop important d'index ...

    D'avance merci
    Échouer, c'est avoir la possibilité de recommencer de manière plus intelligente.

    Twitter Blog Mon site

    Mon article sur l'agilité

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    356
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Mai 2007
    Messages : 356
    Par défaut
    Bonsoir,

    Je ne suis pas très expérimenté sur la construction de base de données par génération automatique. Mais l'idée la plus répendu est de générer les scripts afin de les modifier. Il faut avoir le plus souvent possible la maîtrise des structures que l'on crée.

    En effet, trop de contraintes et d'indexs peuvent nuire aux performances de kla base de données.

  5. #5
    Membre Expert

    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 249
    Par défaut Projet papillote.
    Salut,

    il y a 3 mois, j'ai modélisé un projet d'une vingtaine de tables avec power amc ( génération pour sql serveur 2005 ).
    j'ai généré une premiere fois le script... j'ai regardé si cela correspondait à ce que j'attendais... en cas de problème, il est préférable de revenir au modèle conceptuel et physique pour modifier le paramètrage afin d'obtenir ce que l'on souhaite vraiment. On génére une deuxième fois, voir une troisième fois si nécessaire...

    Au final, je n'ai pas touché le script. Je l'ai appliqué tel quel sur sql serveur.

    Personnellement, je n'ai pas supprimé les index généré par le produit... je me dit que l'optimiseur fera la différence et que si la table est petite, il fera le traitement sans l'index... comme je n'ai aucune idée de la montée en charge du produit, je me dit que d'ici un ou deux ans, ils risquent fort d'avoir besoin de l'indexation vu le type de produit.

    La réponse à ta question : OUI, utilise la génération de script, tu as fait le plus dur : modéliser le MCD. Profites de l'outil et ne perd pas de temps à écrire à la main ton script!

    A+

  6. #6
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    22 010
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 22 010
    Billets dans le blog
    6
    Par défaut
    Par exemple, le script généré contient un nombre trop important d'index ...
    Il est extrémement rare que cela se produise. Power AMC ne place des index (outre ceux placés de manière transparente par le SGBDR derrière les PK et UNIQUE) que pour les FOREIGN KEYs. La seule chose qui peut arriver, c'est un chavauchement d'index, qui d'ailleurs est signalé par Power AMC lui même.

    Il n'y a donc aucun index à retirer, je dirais même il est nécessaire d'ajouter les index nécessaire à la sémantique fonctionnelle.

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  7. #7
    Membre Expert

    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    1 377
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 377
    Par défaut
    Merci, bcp pour vos réponses.

    Donc si j'ai bien compris, ces index sont générer automatiquement dans SQL Server pour les PK et FK ?

    Ce que j'ai fais en fait, c'est d'utiliser une partie du script générer pour ne pas refaire les squelettes des tables et refait les associations (je sais pas optimal ...). Et ai-je à refaire le script des index (FK) ou ils sont généré ?
    Échouer, c'est avoir la possibilité de recommencer de manière plus intelligente.

    Twitter Blog Mon site

    Mon article sur l'agilité

  8. #8
    Membre Expert

    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 249
    Par défaut compréhension.
    si je ne me trompe pas...

    SQL SERVEUR génère en principe l'index pour la clef primaire.
    POWER AMC génère, si tu le demandes, l'index de la clef étrangère en plus.
    Tu peux, en plus, à la main, ajouter des index si tu penses qu'ils seront utiles.

Discussions similaires

  1. [VB.NET] Génération automatique Property (getter / setter)
    Par Husqvarna dans le forum Windows Forms
    Réponses: 7
    Dernier message: 23/07/2020, 11h55
  2. [getters] génération automatique...
    Par phoebe dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 04/10/2005, 17h43
  3. [INFO]Génération automatique de pages HTML
    Par GreenJay dans le forum API standards et tierces
    Réponses: 6
    Dernier message: 28/09/2005, 16h29
  4. [Plugin]Gestion de génération automatique de code
    Par Maggic dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 11/05/2004, 11h35

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