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 22/02/2011, 09h28   #1
Invité régulier
 
Inscription : février 2011
Messages : 38
Détails du profil
Informations forums :
Inscription : février 2011
Messages : 38
Points : 9
Points : 9
Par défaut Contraintes d'intégrité référentielle

Bonjour,
sur la contrainte suivante :
Code :
1
2
   ADD constraint FK_DW_ARTIC_RELATION__DW_GRPAR FOREIGN KEY (CDGRPART, CDSOCART)
      REFERENCES DW_GRPARTICLE (CDGRPART, CDSOCGRPART);
cela signifie qu'on ne peut pas créer un couple CDGRPART, CDSOCART dans DW_ARTICLE s’il n’existe pas dans DW_GRPARTICLE. On ne peut pas supprimer ce couple dans DW_GRPARTICLE s’il est présent dans DW_ARTICLE.

Est que l'identique est valable sur la même contrainte aussi ou la même contrainte doit être ajoutée dans l'autre table.
C'est à dire :
cela signifie qu'on ne peut pas créer un couple CDGRPART, CDSOCGRPART dans DW_GRPARTICLE s’il n’existe pas dans DW_ARTICLE. On ne peut pas supprimer ce couple dans DW_ARTICLE s’il est présent dans DW_GRPARTICLE

Autre question une contrainte n'est qu'une condition d'insertion ou de suppression.
Prend elle en compte la modification c'est à dire si je modifie CDSOCART dans DW_ARTICLE.


Autre question ça ne gère pas d'auto insert ?
Jenesépa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/02/2011, 09h48   #2
Membre Expert
 
Homme
Responsable de service informatique
Inscription : janvier 2009
Messages : 1 081
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 38
Localisation : France

Informations professionnelles :
Activité : Responsable de service informatique
Secteur : Boutique - Magasin

Informations forums :
Inscription : janvier 2009
Messages : 1 081
Points : 1 875
Points : 1 875
Bonjour,
Citation:
Envoyé par Jenesépa Voir le message
Est que l'identique est valable sur la même contrainte aussi ou la même contrainte doit être ajoutée dans l'autre table.
C'est à dire :
cela signifie qu'on ne peut pas créer un couple CDGRPART, CDSOCGRPART dans DW_GRPARTICLE s’il n’existe pas dans DW_ARTICLE. On ne peut pas supprimer ce couple dans DW_ARTICLE s’il est présent dans DW_GRPARTICLE
Heu non, et heureusement d'ailleurs. Si tu ne peux pas créer de couple CDGRPART, CDSOCGRPART dans DW_ARTICLE qui n'existe pas dans DW_GRPARTICLE et que tu ne peux pas créer de couple CDGRPART, CDSOCGRPART dans DW_GRPARTICLE qui ne soit pas dans DW_ARTICLE, tu ne peux rien faire !
Citation:
Envoyé par Jenesépa Voir le message
Autre question une contrainte n'est qu'une condition d'insertion ou de suppression.
Prend elle en compte la modification c'est à dire si je modifie CDSOCART dans DW_ARTICLE.
Ca fonctionne en création/insertion/modification/suppression.
Citation:
Envoyé par Jenesépa Voir le message

Autre question ça ne gère pas d'auto insert ?
Pas à ma connaissance.

Tatayo.
tatayo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/02/2011, 09h51   #3
Invité régulier
 
Inscription : février 2011
Messages : 38
Détails du profil
Informations forums :
Inscription : février 2011
Messages : 38
Points : 9
Points : 9
merci
Jenesépa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/02/2011, 16h39   #4
Rédacteur/Modérateur

 
Avatar de SQLpro
 
Homme Frédéric BROUARD
Expert SGBDR & SQL
Inscription : mai 2002
Messages : 10 950
Détails du profil
Informations personnelles :
Nom : Homme Frédéric BROUARD
Localisation : France

Informations professionnelles :
Activité : Expert SGBDR & SQL
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 10 950
Points : 17 769
Points : 17 769
Citation:
Envoyé par tatayo Voir le message
Bonjour,

Heu non, et heureusement d'ailleurs. Si tu ne peux pas créer de couple CDGRPART, CDSOCGRPART dans DW_ARTICLE qui n'existe pas dans DW_GRPARTICLE et que tu ne peux pas créer de couple CDGRPART, CDSOCGRPART dans DW_GRPARTICLE qui ne soit pas dans DW_ARTICLE, tu ne peux rien faire !
SQL (le langage normatif) le permet en utilisant les contraintes déferrable, mais SQL Server n'implémente pas cela.

Lire l'article que j'ai écrit à ce sujet : http://blog.developpez.com/sqlpro/p6...-deferabilite/

A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro
http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation
* * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *
SQLpro 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 11h10.


 
 
 
 
Partenaires

Hébergement Web