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 :

creer une base de donnee avec T-SQL


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2010
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2010
    Messages : 71
    Par défaut creer une base de donnee avec T-SQL
    Bonsoir,
    je veux creer une base de donnee s'intituler Projet OS avec le code T-SQL sous
    SQL SERVER mais il donne des erreurs!!!!!!!!!!!!
    voici 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
    create database [Projet OS]
    GO
    create table groupe(
    idgroupe int identity ,
    nomgroupe varchar(50) not null,
    descriptiongroupe varchar(50),
    constraint PK_groupe primary key (idgroupe,nomgroupe)
    )
    create table utilisateur(
    idutilisateur int identity,
    nomutilisateur varchar(50) not null,
    descriptionutilisateur varchar(50),
    datecreation datetime not null,
    constraint PK_utilisateur primary key (idutilisateur,nomutilisateur)
    )
    GO
    create table membrede(
    idgroupe int ,
    nomgroupe varchar(50)  ,
    idutilisateur int ,
    nomutilisateur varchar(50),
    constraint PK_membrede primary key(idgroupe,nomgroupe,idutilisateur,nomutilisateur),
    constraint FK1_groupe_membrede foreign key (idgroupe) references groupe(idgroupe),
    constraint FK2_groupe_membrede foreign key (nomgroupe) references groupe(nomgroupe),
    constraint FK3_utilisateur_membrede foreign key (idutilisateur) references utilisateur(idutilisateur),
    constraint FK4_utilisateur_membrede foreign key (nomutilisateur) references utilisateur(nomutilisateur),
    )
    create table motdepasse(
    idmotpasse int identity primary key,
    idutilisateur int foreign key references utilisateur(idutilisateur),
    nomutilisateur varchar(50) foreign key references utilisateur(nomutilisateur),
    motpasse varchar(50) not null,
    dateaffectation datetime not null,
    dureevalidite int default(30)not null
    )
    Voici les erreurs qui affiche :
    Msg*1776, Niveau*16, État*0, Ligne*1
    Aucune clé primaire ou candidate dans la table référencée 'groupe' ne correspond à la liste des colonnes de référence de la clé étrangère 'FK1_groupe_membrede'.
    Msg*1750, Niveau*16, État*0, Ligne*1
    Impossible de créer la contrainte. Voir les erreurs précédentes.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par zaghi Voir le message
    Bonsoir,
    je veux creer une base de donnee s'intituler Projet OS avec le code T-SQL sous
    SQL SERVER mais il donne des erreurs!!!!!!!!!!!!
    Déjà, votre code, c'est du SQL et non du T-Sql.
    Et vos erreurs, on les devine?

  3. #3
    Membre Expert

    Homme Profil pro
    Chargé de Développement et d'Analyse de données
    Inscrit en
    Mars 2010
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé de Développement et d'Analyse de données
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 278
    Par défaut
    Essaye ceci :

    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
    create database [Projet OS]
    GO
    USE [Projet OS]
    GO
    create table groupe(
    idgroupe int identity ,
    nomgroupe varchar(50) not null,
    descriptiongroupe varchar(50),
    constraint PK_groupe primary key (idgroupe,nomgroupe)
    )
    GO
    create table utilisateur(
    idutilisateur int identity,
    nomutilisateur varchar(50) not null,
    descriptionutilisateur varchar(50),
    datecreation datetime not null,
    constraint PK_utilisateur primary key (idutilisateur,nomutilisateur)
    )
    GO
    create table membrede(
    idgroupe int ,
    nomgroupe varchar(50)  ,
    idutilisateur int ,
    nomutilisateur varchar(50),
    constraint PK_membrede primary key(idgroupe,nomgroupe,idutilisateur,nomutilisateur),
    constraint FK1_groupe_membrede foreign key (idgroupe) references groupe(idgroupe),
    constraint FK2_groupe_membrede foreign key (nomgroupe) references groupe(nomgroupe),
    constraint FK3_utilisateur_membrede foreign key (idutilisateur) references utilisateur(idutilisateur),
    constraint FK4_utilisateur_membrede foreign key (nomutilisateur) references utilisateur(nomutilisateur),
    )
    GO
    create table motdepasse(
    idmotpasse int identity primary key,
    idutilisateur int foreign key references utilisateur(idutilisateur),
    nomutilisateur varchar(50) foreign key references utilisateur(nomutilisateur),
    motpasse varchar(50) not null,
    dateaffectation datetime not null,
    dureevalidite int default(30)not null
    )
    GO
    Etienne ZINZINDOHOUE
    Billets-Articles

  4. #4
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2010
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2010
    Messages : 71
    Par défaut
    Merci zinzineti pour votre reponse .
    mais votre solution sa marche pas voici l'erreur que j'ai:
    Msg*1776, Niveau*16, État*0, Ligne*1
    Aucune clé primaire ou candidate dans la table référencée 'groupe' ne correspond à la liste des colonnes de référence de la clé étrangère 'FK1_groupe_membrede'.
    Msg*1750, Niveau*16, État*0, Ligne*1
    Impossible de créer la contrainte. Voir les erreurs précédentes.
    Msg*1776, Niveau*16, État*0, Ligne*1
    Aucune clé primaire ou candidate dans la table référencée 'utilisateur' ne correspond à la liste des colonnes de référence de la clé étrangère 'FK__motdepass__iduti__0425A276'.
    Msg*1750, Niveau*16, État*0, Ligne*1
    Impossible de créer la contrainte. Voir les erreurs précédentes.

  5. #5
    Membre Expert

    Homme Profil pro
    Chargé de Développement et d'Analyse de données
    Inscrit en
    Mars 2010
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé de Développement et d'Analyse de données
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 278
    Par défaut
    les clés étrangères doivent reférencer des primary key.
    exemple :
    FK1_groupe_membrede FOREIGN KEY (idgroupe,nomgroupe) REFERENCES groupe(idgroupe,nomgroupe)

    Ainsi le FK2_groupe_membrede est inutile

    Applique la même règle pour tes FK
    Etienne ZINZINDOHOUE
    Billets-Articles

  6. #6
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2010
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2010
    Messages : 71
    Par défaut
    Citation Envoyé par zinzineti Voir le message
    les clés étrangères doivent reférencer des primary key.
    exemple :
    FK1_groupe_membrede FOREIGN KEY (idgroupe,nomgroupe) REFERENCES groupe(idgroupe,nomgroupe)

    Ainsi le FK2_groupe_membrede est inutile

    Applique la même règle pour tes FK
    Merci beaucoup M. zinzineti

  7. #7
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2010
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2010
    Messages : 71
    Par défaut
    Voici LE code correcte:
    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
    CREATE DATABASE [Projet OS]
    GO
    USE [Projet OS]
    GO
    CREATE TABLE groupe(
    idgroupe int identity ,
    nomgroupe varchar(50) NOT NULL,
    descriptiongroupe varchar(50),
    constraint PK_groupe PRIMARY KEY (idgroupe,nomgroupe)
    )
    GO
    CREATE TABLE utilisateur(
    idutilisateur int identity,
    nomutilisateur varchar(50) NOT NULL,
    descriptionutilisateur varchar(50),
    datecreation datetime NOT NULL,
    constraint PK_utilisateur PRIMARY KEY (idutilisateur,nomutilisateur)
    )
    GO
    CREATE TABLE membrede(
    idgroupe int ,
    nomgroupe varchar(50)  ,
    idutilisateur int ,
    nomutilisateur varchar(50),
    constraint FK1_groupe_membrede FOREIGN KEY (idgroupe,nomgroupe) REFERENCES groupe(idgroupe,nomgroupe),
    constraint FK2_utilisateur_membrede FOREIGN KEY (idutilisateur,nomutilisateur) REFERENCES utilisateur(idutilisateur,nomutilisateur),
    constraint PK_membrede PRIMARY KEY(idgroupe,nomgroupe,idutilisateur,nomutilisateur)
    )
    GO
    CREATE TABLE motdepasse(
    idmotpasse int identity PRIMARY KEY,
    idutilisateur int ,
    nomutilisateur varchar(50),
    motpasse varchar(50) NOT NULL,
    dateaffectation datetime NOT NULL,
    dureevalidite int DEFAULT(30)NOT NULL,
    constraint FK_utilisateur_motdepasse FOREIGN KEY (idutilisateur,nomutilisateur) REFERENCES utilisateur(idutilisateur,nomutilisateur)
    )
    GO

  8. #8
    Invité
    Invité(e)
    Par défaut
    ensuite vos FK doivent aller vers les clefs de la table parent.

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

Discussions similaires

  1. creer une base de donnees sous sql server express 2005
    Par brajae85 dans le forum Développement
    Réponses: 2
    Dernier message: 08/09/2008, 12h54
  2. Réponses: 4
    Dernier message: 05/06/2007, 08h47
  3. [MFC]Ouverture d'une base de donnee avec DAO
    Par Wyatt dans le forum MFC
    Réponses: 7
    Dernier message: 24/01/2005, 10h06
  4. [VB6]Créer une Base de données
    Par ThierryAIM dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 07/04/2003, 17h24
  5. [VB6] [ODBC] Référencer une base de données avec vb
    Par af.balog dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 13/09/2002, 09h51

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