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

SQL Oracle Discussion :

création des tables en sql


Sujet :

SQL Oracle

  1. #1
    Débutant  
    Inscrit en
    Novembre 2008
    Messages
    357
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 357
    Points : 87
    Points
    87
    Par défaut création des tables en sql
    bonjour,

    je suis débutant en SQL , j'ai crée des tables mais il y a des erreurs ,etJe ne savais pas comment les corriger ,j'espére que vous pourrez m'aidez.
    voila le code

    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    /*************** TABLE PATIENT ************/ 
    create Table Patient  
    ( 
     No_dossier SMALLINT NOT NULL, 
     Nom_Patient  VARCHAR(20), 
     Prenom_Patient VARCHAR(20), 
     Date_naissance Date, 
     Lieu_naissance VARCHAR(20),
     Cité  VARCHAR(40),
     Bloc SMALLINT NOT NULL ,
     App SMALLINT NOT NULL ,
     Nom_Pére VARCHAR(20), 
     Nom_mére VARCHAR(20), 
     Groupage char(4), 
     No_médecin SMALLINT NOT NULL, 
    constraint f_K1 foreign key(No_médecin) references Médecin(No_médecin),
    constraint f_K2 foreign key(No_séjour) references Séjour(No_séjour), 
    constraint p_K1 primary key(No_dossier) 
    );
     
    /***************************TABLE séjour*************************/ 
    create table Séjour 
    ( 
    No_séjour SMALLINT NOT NULL,
    Motif_hospitalisation VARCHAR(30), 
    Date_admission Date, 
    Date_congé Date, 
    No_dossier SMALLINT NOT NULL, 
    Nom_diagonstic VARCHAR(30) NOT NULL, 
    constraint p_K5 primary key(No_séjour), 
    constraint f_K3 foreign key(No_dossier) references Patient(No_dossier), 
    constraint f_K4 foreign key(Nom_diagonstic) references Diagnostic(Nom_diagonstic) 
    );
     
    /***********************************TABLE Consultation***************/ 
     
    create Table Consultation 
    ( 
    No_médecin SMALLINT NOT NULL unique, 
    No_séjour SMALLINT NOT NULL, 
    Date_consultation Date,  
    constraint p_K6 primary key(No_médecin,No_séjour), 
    constraint f_K5 foreign key(No_médecin) references Médecin(No_médecin), 
    constraint f_K6 foreign key(No_séjour) references Séjour(No_séjour) 
    );
    /**************************Table Traitement_patient****************/ 
    create Table Traitement_patient  
    ( 
    No_traitement SMALLINT NOT NULL, 
    Date_traitement DATE, 
    Durée_traitement FLOAT, 
    No_séjour SMALLINT NOT NULL, 
    No_médecin SMALLINT NOT NULL, 
    Type_traitement VARCAHR(30) NOT NULL unique, 
    constraint p_K7 primary key(No_traitement), 
    constraint f_K7 foreign key(No_séjour) references Séjour(No_séjour), 
    constraint f_K8 foreign key(No_médecin) references Médecin(No_médecin) 
    constraint f_K9 foreign key(Type_traitement) references Traitement(Type_traitement) 
    );  
    /****************TABLE Médecin**********************/ 
    create table Médecin 
    ( 
    No_médecin SMALLINT NOT NULL, 
    Nom_médecin VARCHAR(20), 
    Prénom_médecin VARCHAR(20), 
    constraint p_K2 primary key(No_médecin) 
    ); 
    /***************************TABLE Diagnostic******************/ 
    create table Diagnostic  
    ( 
    Nom_diagnostic VARCHAR(30) NOT NULL,  
    constraint p_K3 primary key(Nom_diagnostic) 
    ); 
    /********************************TABLE Traitement ******************/ 
    create table Traitement  
    ( 
    Type_traitement VARCHAR(30) NOT NULL, 
    constraint p_K4 primary key(Type_traitement) 
    ); 
     
    /***************************************/

  2. #2
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par hanou88 Voir le message
    mais il y a des erreurs
    Lesquels ?

  3. #3
    Modérateur
    Avatar de sevyc64
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    10 192
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 192
    Points : 28 073
    Points
    28 073
    Par défaut
    Pèle-mêle :
    - des nom de colonnes sont mal orthographiés dans les contraintes
    - de types de colonne sont mal orthographiés
    - il manque des virgules à la fin de certaines lignes
    - tu ne peux pas créer de clé étrangère vers une table qui n'existe pas encore. Revoit l'ordre de création de tes tables.
    - soit il manque un champ dans la table Patient, soit il y a une contraire de trop.
    - si c'est le champ qui manque, tu aura je pense une référence cyclique entre la table Patient et la table Sejour
    --- Sevyc64 ---

    Parce que le partage est notre force, la connaissance sera notre victoire

  4. #4
    Débutant  
    Inscrit en
    Novembre 2008
    Messages
    357
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 357
    Points : 87
    Points
    87
    Par défaut
    Citation Envoyé par Jerome_Mtl Voir le message
    Lesquels ?
    mysql> describe TABLE Patient;
    ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'TABLE Patient' at line 1

  5. #5
    Débutant  
    Inscrit en
    Novembre 2008
    Messages
    357
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 357
    Points : 87
    Points
    87
    Par défaut
    Citation Envoyé par sevyc64 Voir le message
    Pèle-mêle :
    - des nom de colonnes sont mal orthographiés dans les contraintes
    - de types de colonne sont mal orthographiés
    - il manque des virgules à la fin de certaines lignes
    - tu ne peux pas créer de clé étrangère vers une table qui n'existe pas encore. Revoit l'ordre de création de tes tables.
    - soit il manque un champ dans la table Patient, soit il y a une contraire de trop.
    - si c'est le champ qui manque, tu aura je pense une référence cyclique entre la table Patient et la table Sejour
    voila le code après la correction
    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
     
     
     
    /****************TABLE Médecin**********************/ 
     
    CREATE TABLE Médecin 
     
    ( 
     
    No_médecin SMALLINT NOT NULL, 
     
    Nom_médecin VARCHAR(20), 
     
    Prénom_médecin VARCHAR(20), 
     
    constraint p_K1 PRIMARY KEY(No_médecin)); 
     
    /*************** TABLE PATIENT ************/ 
     
    CREATE TABLE Patient  
     
    ( 
     
     No_dossier SMALLINT NOT NULL, 
     
     Nom_Patient  VARCHAR(20), 
     
     Prenom_Patient VARCHAR(20), 
     
     Date_naissance Date, 
     
     Lieu_naissance VARCHAR(20),
     
     Cité  VARCHAR(40),
     
     Bloc SMALLINT NOT NULL ,
     
     App SMALLINT NOT NULL ,
     
     Nom_Pére VARCHAR(20), 
     
     Nom_mére VARCHAR(20), 
     
     Groupage char(4), 
     
     No_médecin SMALLINT NOT NULL, 
     
    constraint p_K2 PRIMARY KEY(No_dossier) ,
     
    constraint f_K1 FOREIGN KEY(No_médecin) REFERENCES Médecin(No_médecin));
     
     
     
     /***************************TABLE Diagnostic******************/ 
     
    CREATE TABLE Diagnostic  
     
    ( 
     
    Nom_diagnostic VARCHAR(30) NOT NULL,  
     
    constraint p_K3 PRIMARY KEY(Nom_diagnostic)); 
     
    /***************************TABLE séjour*************************/ 
     
    CREATE TABLE Séjour 
     
    ( 
     
    No_séjour SMALLINT NOT NULL,
     
    Motif_hospitalisation VARCHAR(30), 
     
    Date_admission Date, 
     
    Date_congé Date, 
     
    No_dossier SMALLINT NOT NULL, 
     
    Nom_diagonstic VARCHAR(30) NOT NULL, 
     
    constraint p_K4 PRIMARY KEY(No_séjour), 
     
    constraint f_K3 FOREIGN KEY(No_dossier) REFERENCES Patient(No_dossier), 
     
    constraint f_K4 FOREIGN KEY(Nom_diagonstic) REFERENCES Diagnostic(Nom_diagnostic));
     
     
     
    /***********************************TABLE Consultation***************/ 
     
     
     
    CREATE TABLE Consultation 
     
    ( 
     
    No_médecin SMALLINT NOT NULL UNIQUE, 
     
    No_séjour SMALLINT NOT NULL, 
     
    Date_consultation Date,  
     
    constraint p_K5 PRIMARY KEY(No_médecin,No_séjour), 
     
    constraint f_K5 FOREIGN KEY(No_médecin) REFERENCES Médecin(No_médecin), 
     
    constraint f_K6 FOREIGN KEY(No_séjour) REFERENCES Séjour(No_séjour));
     
     
     
     
     
    /********************************TABLE Traitement ******************/ 
     
    CREATE TABLE Traitement  
     
    ( 
     
    Type_traitement VARCHAR(30) NOT NULL, 
     
    constraint p_K7 PRIMARY KEY(Type_traitement)); 
     
     
     
    /**************************Table Traitement_patient****************/ 
     
    CREATE TABLE Traitement_patient  
     
    ( 
     
    No_traitement SMALLINT NOT NULL, 
     
    Date_traitement DATE, 
     
    Durée_traitement FLOAT, 
     
    No_séjour SMALLINT NOT NULL, 
     
    No_médecin SMALLINT NOT NULL, 
     
    Type_traitement VARCAHR(30) NOT NULL UNIQUE, 
     
    constraint p_K8 PRIMARY KEY(No_traitement), 
     
    constraint f_K7 FOREIGN KEY(No_séjour) REFERENCES Séjour(No_séjour), 
     
    constraint f_K8 FOREIGN KEY(No_médecin) REFERENCES Médecin(No_médecin) 
     
    constraint f_K9 FOREIGN KEY(Type_traitement) REFERENCES Traitement(Type_traitement));
    et les erreurs
    mysql> describe TABLE Diagnostic;
    ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'TABLE Diagnostic' at line 1
    mysql> describe TABLE Médecin;
    ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'TABLE Médecin' at line 1
    mysql> describe TABLE Patient;
    ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'TABLE Patient' at line 1
    mysql> describe TABLE Diagnostic ;
    ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'TABLE Diagnostic' at line 1

  6. #6
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Customer Success Manager @Vertica
    Inscrit en
    Septembre 2008
    Messages
    8 452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Customer Success Manager @Vertica
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 452
    Points : 17 820
    Points
    17 820
    Par défaut
    mysql... Vous n'avez pas remarqué être dans le forum Oracle ici ?
    Cela dit la plupart des points évoqués sont valables.

    Et je pense que votre commande DESCRIBE n'existe pas.

Discussions similaires

  1. Exécuter un script SQL pour la création des tables
    Par zemzoum89 dans le forum Sql Developer
    Réponses: 6
    Dernier message: 14/11/2015, 15h43
  2. Problème création des tables en SQL-Server
    Par pizzaman dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 10/02/2012, 22h58
  3. Réponses: 1
    Dernier message: 05/06/2010, 01h29
  4. Liste des Tables en sql
    Par JWillow dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 26/01/2005, 22h12
  5. Comment obtenir la description des tables par SQL
    Par rcastaldi dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 15/03/2004, 14h13

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