blob: 1edd942f752960703bba0aa021b7bfe40b1a9123 [file] [log] [blame]
DROP TRIGGER T_LEAGUE
DROP TRIGGER T_PLAYER
DROP TRIGGER T_TEAM
go
DROP TABLE TEAMPLAYER
DROP TABLE PLAYER
DROP TABLE TEAM
DROP TABLE LEAGUE
go
CREATE TABLE PLAYER
(
PLAYER_ID VARCHAR(255) primary key not null,
NAME VARCHAR(255),
POSITION VARCHAR(255),
SALARY double precision not null,
VERSION NUMERIC(19) not null
)
create table LEAGUE
(
LEAGUE_ID VARCHAR(255) primary key not null,
NAME VARCHAR(255),
SPORT VARCHAR(255),
VERSION NUMERIC(19) not null
)
create table TEAM
(
TEAM_ID VARCHAR(255) primary key not null,
CITY VARCHAR(255),
NAME VARCHAR(255),
LEAGUE_ID VARCHAR(255),
VERSION NUMERIC(19) not null,
foreign key (LEAGUE_ID) references LEAGUE (LEAGUE_ID)
)
create table TEAMPLAYER
(
PLAYER_ID VARCHAR(255) not null,
TEAM_ID VARCHAR(255) not null,
constraint PK_TEAMPLAYER primary key (PLAYER_ID, TEAM_ID),
foreign key (TEAM_ID) references TEAM (TEAM_ID),
foreign key (PLAYER_ID) references PLAYER (PLAYER_ID)
)
go
CREATE TRIGGER T_LEAGUE
ON LEAGUE
FOR UPDATE as
begin
UPDATE LEAGUE
SET LEAGUE.VERSION = LEAGUE.VERSION + 1
FROM inserted
WHERE LEAGUE.LEAGUE_ID = inserted.LEAGUE_ID
AND LEAGUE.VERSION = inserted.VERSION
end
go
CREATE TRIGGER T_PLAYER
ON PLAYER
FOR UPDATE as
begin
UPDATE PLAYER
SET PLAYER.VERSION = PLAYER.VERSION + 1
FROM inserted
WHERE PLAYER.PLAYER_ID = inserted.PLAYER_ID
AND PLAYER.VERSION = inserted.VERSION
end
go
CREATE TRIGGER T_TEAM
ON TEAM
FOR UPDATE as
begin
UPDATE TEAM
SET TEAM.VERSION = TEAM.VERSION + 1
FROM inserted
WHERE TEAM.TEAM_ID = inserted.TEAM_ID
AND TEAM.VERSION = inserted.VERSION
end
go