
- C'est le modélisateur, avec l'aide de l'utilisateur, qui place les attributs avec les entités qu'ils décrivent - une fois les assignations faites, on valide les choix formellement au moyen de la normalisation.
- Il y deux points où les experts ne s'entendent pas concernant les attributs:
- doit-on inclure les attributs calculés dans le modèle? la tendance semble être pour le "oui" parce que ces attributs peuvent être importants pour l'utilisateur et le modèle ne serait pas clair sans eux et deuxièmement, même si on montre ces attributs dans le modèle, cela ne veut pas dire qu'on les codera dans la base de données au moment de l'implantation physique.
- doit-on inclure les attributs dans le diagramme entité-relation? la tendance içi aussi est "oui" - parce que le diagramme sera plus complet, même s'il risque de devenir trop chargé.- On doit maintenant s'assurer que les données respectent les règles d'intégrité: il faut être certain, en tous temps, que les données dans la base de donnée sont correctes et consistentes.
- Intégrité de l'entité: pour chaque instance d'une entité la clé primaire doit exister, elle doit être unique et elle ne peut pas être nulle.
- Intégrité référentielle: chaque clé étrangère dans une entité doit représenter la clé primaire d'une autre entité - il faut donc être toujours en mesure de naviguer entre entités parent-enfant - par exemple, dans le cas d'une insertion, le parent doit exister pour pouvoir insérer un enfant - de même, on n'enlève pas un parent si des enfants existent. Par exemple, dans le modèle Éditeur, pour pouvoir entrer le nom de l'auteur dans la table "Livre" il faut que l'auteur existe déjà dans la table "Auteur"; aussi, il n'est pas permit d'enlever un auteur de la table "Auteur" si son nom est présent dans la table "Livre" - ces deux situations, si on les permet, créent une référence à une chose qui n'existe pas et faussent la base de données. Habituellement, les logiciels imposent le respect des règles d'intégrité référentielle: l'opération (Insert, Delete ou Modify) n'est pas permise si elle viole les règles.
- Intégrité des domaines: chaque attribut devrait avoir un domaine de valeurs permises, des valeurs qui ont du sens pour cet attribut - par exemple, le type de donnée, la longueur, le format de date, les limites maximum et minimum, les valeurs par défaut et une indication de si la valeur "nul" est permise.
| Au cours des prochaines semaines, alors que nous ne ferons que du SQL, si vous voulez continuer à expérimenter avec le PowerBuilder lui-même, il y a un excellent tutoriel que vous pouvez consulter. C'est à Baylor University aux USA. Prenez le temps d'aller y jeter un coup d'oeil et même d'essayer les labos. Tutoriel PB |
Maintenant que nous avons modélisé les données et que nous avons une idée précise de l'organisation des tables, des relations, des attributs et des contraintes d'intégrité, nous passons à la création de la b.d. physique.
Pour ce faire, nous utilisons l'outil SYBASE SQL CENTRAL. Mais, avant de partir on doit créer un répertoire approprié pour conserver les b.d. qui seront créées. Je vous suggère de ne pas placer le répertoire trop loin dans la structure car dans quelques opérations plus tard vous devez entrer le path au complet. Par exemple: N:\BDSQL conviendrait.
Sybase SQL Central
- Lancer SQL Central - faire Cancel pour Database Name Required
- Choisir SQL Anywhere Utilities -->Create Database - donner un nom à la b.d. par exemple, GESTION ou PROJETS - suivre les instructions de création - pour le Code-page choisir 'Canada French' - lorsqu'on demande un userid et password, utiliser toujours dba pour le userid et sql pour le password .
- Ouvrir la b.d.
- Ouvrir Tables - choisir Add Table - donner un nom à la table
- Ouvrir Columns - choisir Add Column - décrire chaque colonne (attribut) de la table avec les onglets General et Data Type - la colonne qui servira de clé primaire doit avoir les propriétés Unique et Nuls interdits - s'assurer que toutes les définitions sont bonnes car c'est un paquet de trouble de les changer après que la b.d. est finalisée
- Répéter les opérations de Add Table et Add Column pour toutes les tables qui composent la b.d.
- Établir les relations en spécifiant Foreign Keys - la clé étrangère dans une table doit être la clé primaire dans une autre table - en même temps, spécifier les contraintes d'intégrité
SQL Anywhere Interactive
- Sert à manipuler directement une base de données SQL - on peut faire la création de données, la mise à jour et l'interrogation - tout se fait au moyen des commandes du langage SQL
- En partant le logiciel la première chose à faire est de se connecter à une base de données:
Command --> Connect --> userid, password, database file: N:\BDSQL\gestion.db
- Pour entrer les commandes on utilise constamment File --> New et Command --> Recall et le bouton Execute
- Au cours des prochaines leçons nous allons étudier les commandes SQL en détail