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 :

Delete on cascade avec SQL server


Sujet :

MS SQL Server

  1. #1
    Nouveau membre du Club
    Inscrit en
    Juillet 2003
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 27
    Points : 26
    Points
    26
    Par défaut Delete on cascade avec SQL server
    Bonjour,

    J'ai un problème avec SQL server:
    je peut faire un delete on cascade avec SQL server?
    ça ne marche pas, y'a-t-il une autre requête qui effectue la même tâche?

    Merci d'avance!!

  2. #2
    Rédacteur
    Avatar de WOLO Laurent
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2003
    Messages
    2 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 2 741
    Points : 4 414
    Points
    4 414
    Par défaut
    SQL SERVEUR SUPPORTE LE ON DELETE CASCADE:
    Voici comment proceder:
    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 TABLE CLIENT
    (
     Cli_id int not null identity(1,1) primary key,
     Cli_Nom varchar(50)
    );
     
    CREATE TABLE FACTURE
    (
     FAC_ID int not null identity(1,1) primary key,
     CLI_ID int not null ,
     FAC_MANTANT Money,
     CONSTRAINT [FK_FACTURE_CLIENT] FOREIGN KEY 
    	(
    		[CLI_ID]
    	) REFERENCES [CLIENT] (
    		[CLI_ID]
    	) ON DELETE CASCADE 
    );
    --Inserer les données pour le jeu d'essais
    --Les clients d'abord.
    INSERT INTO CLIENT (CLi_nom)
    VALUES('WOLO Laurent');
    INSERT INTO CLIENT (CLi_nom)
    VALUES('WOLO NANCY');
    --Ensuite les factures
    INSERT INTO FACTURE (CLI_ID,FAC_MANTANT)
    VALUES (1,1000);
    INSERT INTO FACTURE (CLI_ID,FAC_MANTANT)
    VALUES (1,1200);
    INSERT INTO FACTURE (CLI_ID,FAC_MANTANT)
    VALUES (1,3000);
    INSERT INTO FACTURE (CLI_ID,FAC_MANTANT)
    VALUES (2,1800);
    /* il suffit de supprimer le client 1 pour que les factures soient automatiquement supprimées */
    /* En fait cet technique n'est pas recommander mais c'est juste un exemple */
    DELETE FROM CLIENT
    WHERE CLI_ID=1
    --Et toutes les factures du client sont supprimées avant la suppression du proprietaire : le client 1 !!!
    A vous de jouer

    Découvrez la FAQ de MS SQL Server.
    La chance accorde ses faveurs aux esprits avertis !

  3. #3
    Nouveau membre du Club
    Inscrit en
    Juillet 2003
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 27
    Points : 26
    Points
    26
    Par défaut
    Merci beaucoup,

    ça marche est j'ai gagné baucoup de ton grace à vous!!

  4. #4
    Membre à l'essai
    Inscrit en
    Mars 2002
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 36
    Points : 21
    Points
    21
    Par défaut
    ouais et bien moi, ça ne marche pas avec mes tables, qui sont semblables, et j'ai le message :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     Serveur : Msg 512, Niveau 16, État 1, Ligne 1
    Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression.
    The statement has been terminated.

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

Discussions similaires

  1. on delete cascade sous sql server 2005
    Par soul-31 dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 07/07/2010, 11h32
  2. envoi de mail avec sql server
    Par the_new dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 17/03/2005, 18h56
  3. fonction left avec sql server 6.5
    Par shake dans le forum Langage SQL
    Réponses: 2
    Dernier message: 29/06/2004, 08h48
  4. Gérer les queue avec sql server ?
    Par devdev dans le forum MS SQL Server
    Réponses: 8
    Dernier message: 17/06/2004, 17h38
  5. Déployer une appli avec SQL SERVER
    Par tiboleo dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 15/10/2003, 14h29

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