Ich erstellte eine gespeicherte Prozedur, um Datensätze aus mehreren Tabellen zu löschen.Mit Join, um einen Datensatz aus mehreren Tabellen zu löschen
Meine gespeicherte Prozedur sieht wie folgt aus:
create proc SPdellistbollandinvoice
@trno nvarchar(50)
as
begin
delete from listmybill where [email protected]
delete from listinvoice where [email protected]
end
Das funktioniert prima, aber ich möchte lernen, wie man das gleiche löschen verwenden beizutreten.
Dies ist, was ich
exec SPdellistbollandinvoice '100280120171'
und die Nachricht
(1 row(s) affected)
(1 row(s) affected)
Sie können nicht gelöscht werden mehr als eine Tabelle mit einzelnen 'delete' Anweisung löschen tue. Ein anderer Weg wäre 'trigger' zu erstellen oder eine andere Tabelle innerhalb des Triggers zu löschen, aber der Trigger wird für jede delete-Anweisung ausgelöst, nicht nur für die delete-Anweisung in der Prozedur –
Oder wenn es einen Fremdschlüssel zwischen den Tabellen gibt, benutze auf Löschkaskade. –