Précédent   Forum des professionnels en informatique > Bases de données > Langage SQL
Langage SQL Forum d'entraide sur le langage SQL et sur les questions liées à la conception de schéma (DDL). Cours SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 09/01/2011, 11h15   #1
Invité de passage
 
Inscription : octobre 2009
Messages : 43
Détails du profil
Informations forums :
Inscription : octobre 2009
Messages : 43
Points : 3
Points : 3
Par défaut création des types et des tables en sql3

Bonjour, j'ai un problème en sql3: quand on crée un type et quand on crée une table? et quelle est l'utilité d'utiliser les types ?
Merci
asma07 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2011, 16h01   #2
Modérateur
 
Avatar de CinePhil
 
Homme Philippe Leménager
Ingénieur d'études en informatique
Inscription : août 2006
Messages : 10 985
Détails du profil
Informations personnelles :
Nom : Homme Philippe Leménager
Âge : 48
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur d'études en informatique
Secteur : Enseignement

Informations forums :
Inscription : août 2006
Messages : 10 985
Points : 18 232
Points : 18 232
Envoyer un message via MSN à CinePhil
Si ces "types" sont des domaines, tu peux lire cet extrait de cours de SQLPro.
__________________
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 !
CinePhil est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2011, 16h50   #3
Invité de passage
 
Inscription : octobre 2009
Messages : 43
Détails du profil
Informations forums :
Inscription : octobre 2009
Messages : 43
Points : 3
Points : 3
Par exemple:

Code :
1
2
3
4
5
CREATE type bureau
(NumB integer,
etage integer,
contient list(ref<posteTravail>)
);
Code :
1
2
3
4
CREATE TABLE logiciels
(codel integer PRIMARY KEY,
noml varchar,
......)of new type logiciel;
Code :
1
2
3
4
5
6
7
CREATE TABLE installation
(
datei Date,
concerneposte ref<posteTravail>,
concernelogiciel ref<logiciel>,
....
);
Code :
CREATE TABLE bureaux of type bureau;
Quelle est la différence entre ces 3 exemples et quand on utilise chacun d'entre eux?
merci
asma07 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2011, 20h42   #4
Modérateur
 
Avatar de CinePhil
 
Homme Philippe Leménager
Ingénieur d'études en informatique
Inscription : août 2006
Messages : 10 985
Détails du profil
Informations personnelles :
Nom : Homme Philippe Leménager
Âge : 48
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur d'études en informatique
Secteur : Enseignement

Informations forums :
Inscription : août 2006
Messages : 10 985
Points : 18 232
Points : 18 232
Envoyer un message via MSN à CinePhil
As-tu lu le lien que je t'ai donné ?
Ce n'est pas du tout à ça que ça doit servir !

Ton type "bureau" est une donnée multi-valuée qui est contraire au principe élémentaire des bases de données : 1 donnée dans 1 colonne !

Là il faut que tu crées une table "bureau" et la table "installation" contiendra en clés étrangères l'identifiant du bureau et l'identifiant du logiciel.

Un type est fait pour "formater" spécifiquement un type plus générique.
Prenons le cas des codes postaux français. Comme on ne fait pas de calcul avec, le type général est un CHAR(5) mais on ne peut pas y entrer 'abcde', uniquement des chiffres et le transtypage de cet ensemble de chiffres en nombre doit être compris entre une plage de valeur allant de 1000 (code 01000) à potentiellement 97999 (je ne crois pas qu'il y ait de code postal en dehors des départements donc jusqu'aux départements d'outremer qui commencent par 97) mais dans la réalité peut-être moins, il faudrait voir ça avec la Poste.

On pourrait donc définir un type "code_postal" qui serait un CHAR(5) muni de contraintes. Ensuite, dans les tables, on pourrait utiliser ce type et le SGBD fait les vérifications tout seul.
__________________
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 !
CinePhil est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h24.


 
 
 
 
Partenaires

Hébergement Web