-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmain.sql
More file actions
33 lines (31 loc) · 758 Bytes
/
main.sql
File metadata and controls
33 lines (31 loc) · 758 Bytes
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
create procedure main @newVersion int
as
begin
set nocount on
if @newVersion > 5 or @newVersion < 0
begin
raiserror('Versiunea trebuie sa fie intre 0 si 5!',0,1) with nowait;
return;
end
declare @oldVersion int
set @oldVersion = (Select idVersiune from dbo.Versiune where idVersiune >= 0 and idVersiune <= 5);
delete from Versiune where idVersiune is not null;
insert into Versiune values(@newVersion);
declare @i int
set @i = @oldVersion
if @newVersion > @oldVersion
while ( @i < @newVersion )
begin
set @i = @i + 1
exec do_procedure @i;
end
else
if @newVersion < @oldVersion
while ( @i > @newVersion )
begin
exec undo_procedure @i;
set @i = @i - 1
end
else print 'Suntem deja la aceasta versiune!'
end
go