Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    [SQL SERVER] Delete record correlati

    Buonasera a tutti; ho 2 tabelle dbo.PRINCIPALE e dbo.DETTAGLI
    e dentro queste tabelle ho il campo ID su tutte e due che le collega, con relazione uno a molti da principale a dettagli.

    Io vorrei che se cancello un record da principale mi si cancellino anche tutti i record correlati di dettagli.

    E' una cosa possibile?

    codice:
    DELETE FROM dbo.PRINCIPALE
    WHERE NUMDOC = var1
    e a catena tutti i record di dbo.DETTAGLI che soddisfano la condizione WHERE di dbo.PRINCIPALE

  2. #2

  3. #3
    Ho letto gli articoli anche se in inglese non sono proprio un mago....

    quindi mi pare di capire che o imposti il DB alla nascita per fare la cancellazione in serie di tutti i record oppure non puoi farci niente???

    Perchè io ho un DB che quello è e quello deve rimanere e non prevede tale cancellazione in serie....

  4. #4
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Se non imposti i vincoli in fase di creazione di tabella o aggiungendoli successivamente tramite alter table non puoi avere l'eliminazione in cascata. Sarai costretto a eseguire una query di cancellazione su ciascuna tabella.

  5. #5
    Ma se faccio un DELETE con una SELECT dentro con IN dici non funziona lo stesso??

    una cosa del genere insomma.....


    codice:
    DELETE FROM dbo.DETTAGLI 
    WHERE dbo.DETTAGLI.numdoc IN (SELECT numdoc FROM dbo.PRINCIPALE WHERE dbo.PRINCIPALE.numdoc = var1)

  6. #6
    non ti sembra un attimo ridondante?

    (SELECT numdoc FROM dbo.PRINCIPALE WHERE dbo.PRINCIPALE.numdoc = var1)

    cosa mai potrà riportarti? var1 !!!!

    quindi

    DELETE FROM dbo.DETTAGLI WHERE dbo.DETTAGLI.numdoc= var1

    sprecone!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.