Skip to content

Commit

Permalink
Merge pull request #718 from cschabl/onetomany-missing-create-table-s…
Browse files Browse the repository at this point in the history
…tatements

#664: create table statements for teams and players for other DBs.
  • Loading branch information
Igor Polevoy committed May 17, 2018
2 parents 43817a7 + fe7b761 commit 23e7387
Show file tree
Hide file tree
Showing 6 changed files with 68 additions and 1 deletion.
6 changes: 6 additions & 0 deletions activejdbc/src/test/resources/db2_schema.sql
Original file line number Diff line number Diff line change
Expand Up @@ -191,6 +191,12 @@ CREATE TABLE boxes (id int primary key GENERATED ALWAYS AS IDENTITY, "color" VAR
CALL dropTable('passengers');
CREATE TABLE passengers (id int primary key GENERATED ALWAYS AS IDENTITY, user_id INT NOT NULL, vehicle VARCHAR(10),mode VARCHAR(10));

CALL dropTable('teams');
CREATE TABLE teams (team_id int primary key GENERATED ALWAYS AS IDENTITY, name VARCHAR(56) NOT NULL);

CALL dropTable('players');
CREATE TABLE players (id int primary key GENERATED ALWAYS AS IDENTITY, first_name VARCHAR(56) NOT NULL, last_name VARCHAR(56) NOT NULL, team_id INT);

CALL dropTable('bands');
CREATE TABLE bands (band_id int primary key GENERATED ALWAYS AS IDENTITY, name VARCHAR(56) NOT NULL);

Expand Down
12 changes: 12 additions & 0 deletions activejdbc/src/test/resources/mssql_schema.sql
Original file line number Diff line number Diff line change
Expand Up @@ -408,6 +408,18 @@ BEGIN
END
CREATE TABLE passengers (id INT IDENTITY PRIMARY KEY, user_id INT NOT NULL, vehicle VARCHAR(10), mode VARCHAR(10));

IF object_id('dbo.teams') IS NOT NULL
BEGIN
DROP TABLE [dbo].[teams]
END
CREATE TABLE teams (team_id INT IDENTITY PRIMARY KEY, name VARCHAR(56) NOT NULL);

IF object_id('dbo.players') IS NOT NULL
BEGIN
DROP TABLE [dbo].[players]
END
CREATE TABLE players (id INT IDENTITY PRIMARY KEY, first_name VARCHAR(56) NOT NULL, last_name VARCHAR(56) NOT NULL, team_id INT);


IF object_id('dbo.bands') IS NOT NULL
BEGIN
Expand Down
6 changes: 6 additions & 0 deletions activejdbc/src/test/resources/mysql_schema.sql
Original file line number Diff line number Diff line change
Expand Up @@ -207,6 +207,12 @@ CREATE TABLE boxes (id int(11) NOT NULL auto_increment PRIMARY KEY, color VARCH
DROP TABLE IF EXISTS passengers;
CREATE TABLE passengers (id int(11) NOT NULL auto_increment PRIMARY KEY, user_id INT(11) NOT NULL, vehicle VARCHAR(10), mode VARCHAR(10), created_at DATETIME, updated_at DATETIME) ENGINE=InnoDB DEFAULT CHARSET=utf8;

DROP TABLE IF EXISTS teams;
CREATE TABLE teams (team_id int(11) NOT NULL auto_increment PRIMARY KEY, name VARCHAR(56) NOT NULL);

DROP TABLE IF EXISTS players;
CREATE TABLE players (id int(11) NOT NULL auto_increment PRIMARY KEY, first_name VARCHAR(56) NOT NULL, last_name VARCHAR(56) NOT NULL, team_id int(11));


DROP TABLE IF EXISTS bands;
CREATE TABLE bands (band_id int(11) NOT NULL auto_increment PRIMARY KEY, name VARCHAR(56) NOT NULL);
Expand Down
35 changes: 34 additions & 1 deletion activejdbc/src/test/resources/oracle_schema.sql
Original file line number Diff line number Diff line change
Expand Up @@ -1103,6 +1103,39 @@ select coalesce(:new.id, passengers_seq.nextval) into :new.id from dual;
end;
-- BREAK

CREATE TABLE teams (team_id NUMBER NOT NULL, name VARCHAR(56) NOT NULL)
-- BREAK
ALTER TABLE teams ADD CONSTRAINT teams_pk PRIMARY KEY (team_id)
-- BREAK
CREATE SEQUENCE teams_seq START WITH 1 INCREMENT BY 1
-- BREAK
CREATE OR REPLACE TRIGGER teams_trigger
BEFORE INSERT ON teams REFERENCING
NEW AS new
OLD AS old
FOR EACH ROW
begin
select coalesce(:new.team_id, teams_seq.nextval) into :new.team_id from dual;
end;
-- BREAK


CREATE TABLE players (id NUMBER NOT NULL, first_name VARCHAR(56) NOT NULL, last_name VARCHAR(56) NOT NULL, team_id NUMBER)
-- BREAK
ALTER TABLE players ADD CONSTRAINT players_pk PRIMARY KEY (id)
-- BREAK
CREATE SEQUENCE players_seq START WITH 1 INCREMENT BY 1
-- BREAK
CREATE OR REPLACE TRIGGER players_trigger
BEFORE INSERT ON players REFERENCING
NEW AS new
OLD AS old
FOR EACH ROW
begin
select coalesce(:new.id, players_seq.nextval) into :new.id from dual;
end;
-- BREAK


CREATE TABLE bands (band_id NUMBER NOT NULL, name VARCHAR(56) NOT NULL )
-- BREAK
Expand Down Expand Up @@ -1201,4 +1234,4 @@ CREATE OR REPLACE TRIGGER employees_trigger
begin
select coalesce(:new.id, employees_seq.nextval) into :new.id from dual;
end;
-- BREAK
-- BREAK
4 changes: 4 additions & 0 deletions activejdbc/src/test/resources/postgres_schema.sql
Original file line number Diff line number Diff line change
Expand Up @@ -205,7 +205,11 @@ CREATE TABLE boxes (id serial PRIMARY KEY, "color" VARCHAR(56) NOT NULL, fruit_i
DROP TABLE IF EXISTS passengers;
CREATE TABLE passengers (id serial PRIMARY KEY, "vehicle" VARCHAR(56),"mode" VARCHAR(56), user_id INT);

DROP TABLE IF EXISTS teams;
CREATE TABLE teams (team_id serial PRIMARY KEY, name VARCHAR(56) NOT NULL);

DROP TABLE IF EXISTS players;
CREATE TABLE players (id serial PRIMARY KEY, first_name VARCHAR(56) NOT NULL, last_name VARCHAR(56) NOT NULL, team_id INT);

DROP TABLE IF EXISTS bands;
CREATE TABLE bands (band_id serial PRIMARY KEY, name VARCHAR(56) NOT NULL);
Expand Down
6 changes: 6 additions & 0 deletions activejdbc/src/test/resources/sqlite_schema.sql
Original file line number Diff line number Diff line change
Expand Up @@ -203,6 +203,12 @@ CREATE TABLE boxes (id INTEGER PRIMARY KEY AUTOINCREMENT, color VARCHAR(56) NOT
DROP TABLE IF EXISTS passengers;
CREATE TABLE passengers (id INTEGER PRIMARY KEY AUTOINCREMENT, vehicle VARCHAR(56), mode VARCHAR(56), user_id INT(11));

DROP TABLE IF EXISTS teams;
CREATE TABLE teams (team_id INTEGER PRIMARY KEY AUTOINCREMENT, name VARCHAR(56) NOT NULL);

DROP TABLE IF EXISTS players;
CREATE TABLE players (id INTEGER PRIMARY KEY AUTOINCREMENT, first_name VARCHAR(56) NOT NULL, last_name VARCHAR(56) NOT NULL, team_id INT(11));

DROP TABLE IF EXISTS bands;
CREATE TABLE bands (band_id INTEGER PRIMARY KEY AUTOINCREMENT, name VARCHAR(56) NOT NULL);

Expand Down

0 comments on commit 23e7387

Please sign in to comment.