sql server - sql delete query -
this question has answer here:
when want exec following query:
delete login, klantgegevens, ordergegevens login inner join klantgegevens on login.klantid=klantgegevens.klantid inner join ordergegevens on login.klantid=ordergegevens.loginnr login.klantid=3
i error:
msg 102, level 15, state 1, line 1 incorrect syntax near ','.
obviously there wrong between "delete" , "inner join". (delete login,klantgegevens,ordergegevens login inner join )
what should be?
thankyou.
edit :
i want delete klantid 3.
i don't know if attempt use inner joins implies want delete record if exists in 3 tables.
for answer -- assuming don't care (you want delete wherever find it):
create proc dbo.deletelotsofstuff (@id int) begin delete login klantid = @id delete klantgegevens klantid = @id delete ordergegevens loginnr = @id end
exec dbo.deletelotsofstuff 3
alternatively -- can add constraints (primary key / foreign key relationship) main table, , set `delete cascade'. if that, whenever run (for example):
delete login klantid = @id
it automatically delete corresponding rows klantgegevens
, ordergegevens
.
more information on adding contraints here: https://msdn.microsoft.com/en-us/library/ms188066.aspx
Comments
Post a Comment