Précédent   Forum des professionnels en informatique > Bases de données > MS SQL-Server
MS SQL-Server Forum Microsoft SQL-Server. Avant de poster -> FAQ SQL-Server, Tutoriels SQL-Server
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 29/12/2010, 19h31   #1
Invité régulier
 
Inscription : mars 2010
Messages : 39
Détails du profil
Informations forums :
Inscription : mars 2010
Messages : 39
Points : 5
Points : 5
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 :
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.
zaghi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2010, 19h35   #2
Expert Confirmé
 
Avatar de 7gyY9w1ZY6ySRgPeaefZ
 
Homme
dba
Inscription : juillet 2007
Messages : 2 520
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Canada

Informations professionnelles :
Activité : dba

Informations forums :
Inscription : juillet 2007
Messages : 2 520
Points : 3 967
Points : 3 967
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?
__________________
les règles du forum - mode d'emploi du forum
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs.
(Rappel : "ça ne marche pas" n'est pas un message d'erreur)
JE NE RÉPONDS PAS aux questions techniques par message privé.
Écrire en français sur un forum est une marque minimale de respect.
7gyY9w1ZY6ySRgPeaefZ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2010, 19h47   #3
Membre Expert
 
Homme Etienne ZINZINDOHOUE
Ingénieur développement
Inscription : mars 2010
Messages : 1 138
Détails du profil
Informations personnelles :
Nom : Homme Etienne ZINZINDOHOUE
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Ingénieur développement
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : mars 2010
Messages : 1 138
Points : 2 466
Points : 2 466
Envoyer un message via Yahoo à zinzineti
Essaye ceci :

Code :
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
zinzineti est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2010, 19h54   #4
Invité régulier
 
Inscription : mars 2010
Messages : 39
Détails du profil
Informations forums :
Inscription : mars 2010
Messages : 39
Points : 5
Points : 5
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.
zaghi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2010, 19h57   #5
Expert Confirmé
 
Avatar de 7gyY9w1ZY6ySRgPeaefZ
 
Homme
dba
Inscription : juillet 2007
Messages : 2 520
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Canada

Informations professionnelles :
Activité : dba

Informations forums :
Inscription : juillet 2007
Messages : 2 520
Points : 3 967
Points : 3 967
ensuite vos FK doivent aller vers les clefs de la table parent.
__________________
les règles du forum - mode d'emploi du forum
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs.
(Rappel : "ça ne marche pas" n'est pas un message d'erreur)
JE NE RÉPONDS PAS aux questions techniques par message privé.
Écrire en français sur un forum est une marque minimale de respect.
7gyY9w1ZY6ySRgPeaefZ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2010, 20h23   #6
Membre Expert
 
Homme Etienne ZINZINDOHOUE
Ingénieur développement
Inscription : mars 2010
Messages : 1 138
Détails du profil
Informations personnelles :
Nom : Homme Etienne ZINZINDOHOUE
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Ingénieur développement
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : mars 2010
Messages : 1 138
Points : 2 466
Points : 2 466
Envoyer un message via Yahoo à zinzineti
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
zinzineti est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 29/12/2010, 20h55   #7
Invité régulier
 
Inscription : mars 2010
Messages : 39
Détails du profil
Informations forums :
Inscription : mars 2010
Messages : 39
Points : 5
Points : 5
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
zaghi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2010, 20h57   #8
Invité régulier
 
Inscription : mars 2010
Messages : 39
Détails du profil
Informations forums :
Inscription : mars 2010
Messages : 39
Points : 5
Points : 5
Voici LE code correcte:
Code :
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
zaghi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2010, 21h06   #9
Expert Confirmé
 
Avatar de 7gyY9w1ZY6ySRgPeaefZ
 
Homme
dba
Inscription : juillet 2007
Messages : 2 520
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Canada

Informations professionnelles :
Activité : dba

Informations forums :
Inscription : juillet 2007
Messages : 2 520
Points : 3 967
Points : 3 967
Pour toutes tes tables, pourquoi avoir à la fois l'id et son label dans la clef primaire?
Ça implique que tu ne puisses pas changer le label après une faute d'orthographe...
Et si tu as un id unique pourquoi avoir le libellé avec?
Ça me semble être une erreur de conception.
__________________
les règles du forum - mode d'emploi du forum
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs.
(Rappel : "ça ne marche pas" n'est pas un message d'erreur)
JE NE RÉPONDS PAS aux questions techniques par message privé.
Écrire en français sur un forum est une marque minimale de respect.
7gyY9w1ZY6ySRgPeaefZ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2010, 21h33   #10
Invité régulier
 
Inscription : mars 2010
Messages : 39
Détails du profil
Informations forums :
Inscription : mars 2010
Messages : 39
Points : 5
Points : 5
Citation:
Envoyé par 7gyY9w1ZY6ySRgPeaefZ Voir le message
Pour toutes tes tables, pourquoi avoir à la fois l'id et son label dans la clef primaire?
Ça implique que tu ne puisses pas changer le label après une faute d'orthographe...
Et si tu as un id unique pourquoi avoir le libellé avec?
Ça me semble être une erreur de conception.
oui tu as raison mais notre cahier des charges force ca.
zaghi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/12/2010, 14h27   #11
Expert Confirmé
 
Avatar de 7gyY9w1ZY6ySRgPeaefZ
 
Homme
dba
Inscription : juillet 2007
Messages : 2 520
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Canada

Informations professionnelles :
Activité : dba

Informations forums :
Inscription : juillet 2007
Messages : 2 520
Points : 3 967
Points : 3 967
Citation:
Envoyé par zaghi Voir le message
oui tu as raison mais notre cahier des charges force ca.
Eh bien, c'est tout bonnement ridicule.
__________________
les règles du forum - mode d'emploi du forum
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs.
(Rappel : "ça ne marche pas" n'est pas un message d'erreur)
JE NE RÉPONDS PAS aux questions techniques par message privé.
Écrire en français sur un forum est une marque minimale de respect.
7gyY9w1ZY6ySRgPeaefZ est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h30.


 
 
 
 
Partenaires

Hébergement Web