diff --git a/TournamentsDB/TournamentsDB.sqlproj b/TournamentsDB/TournamentsDB.sqlproj index 37286cc..9716752 100644 --- a/TournamentsDB/TournamentsDB.sqlproj +++ b/TournamentsDB/TournamentsDB.sqlproj @@ -91,6 +91,7 @@ + diff --git a/TournamentsDB/dbo/Stored Procedures/spTournaments_Delete.sql b/TournamentsDB/dbo/Stored Procedures/spTournaments_Delete.sql new file mode 100644 index 0000000..c6d4c3d --- /dev/null +++ b/TournamentsDB/dbo/Stored Procedures/spTournaments_Delete.sql @@ -0,0 +1,40 @@ +CREATE PROCEDURE [dbo].[spTournaments_Delete] + @TournamentId int +AS +BEGIN + + SET NOCOUNT ON; + + DELETE FROM Prizes + WHERE id IN ( + SELECT PrizeId + FROM TournamentPrizes + WHERE TournamentId = @TournamentId + ); + + DELETE FROM TournamentPrizes + WHERE TournamentId = @TournamentId; + + ------------------------------------------ + + DELETE FROM TournamentEntries + WHERE TournamentId = @TournamentId; + + ------------------------------------------ + + DELETE FROM MatchupEntries + WHERE MatchupId IN( + SELECT id + FROM Matchups + WHERE TournamentId = @TournamentId); + + + DELETE FROM Matchups + WHERE TournamentId = @TournamentId; + + ------------------------------------------ + + DELETE FROM Tournaments + WHERE id = @TournamentId; + +END