All Downloads are FREE. Search and download functionalities are using the official Maven repository.

sql.postgresql_create_db.sql Maven / Gradle / Ivy

-- BEGIN SECTION 1 --------------------------------------
create table EMPLOYEE
(
  ID        bigint not null,
  EMPLOYEE_NUMBER VARCHAR(100),
  NAME      VARCHAR(200),
  SURNAME   VARCHAR(200),
  AGE	bigint not null,
  PRIMARY KEY (ID)
);

create table TEMP_TABLE 
(
  ID        bigint not null,
  NAME      VARCHAR(200)
);

-- END SECTION 1 ----------------------------------------


-- BEGIN SECTION 2 --------------------------------------
-- Create table
create table PEOPLE
(
  ID          bigint not null,
  firstname        varchar(100),
  lastname     varchar(100),
  birthdate timestamp,
  deathdate date,
  firstblob	BYTEA ,
  secondblob BYTEA, 
  firstclob TEXT
);

alter table PEOPLE  add constraint IDX_PEOPLE primary key (ID);

create sequence SEQ_PEOPLE;

-- Create table
create table BLOBCLOB
(
  id          bigint not null,
  blob_field BYTEA ,
  clob_field TEXT
);

alter table BLOBCLOB add constraint IDX_BLOBCLOB primary key (ID);

create sequence SEQ_BLOBCLOB;
-- END SECTION 2 ----------------------------------------


-- BEGIN SECTION 3 --------------------------------------
-- Create table
create table AUTHORS
(
  id          bigint not null,
  firstname        varchar(100),
  lastname     varchar(100),
  birthdate timestamp,
  PRIMARY KEY (ID)
);
  
-- Create sequence 
create sequence SEQ_AUTHORS;


-- Create table
create table PUBLICATIONS
(
  ID                bigint not null,
  IDAUTHOR	bigint not null,
  TITLE            VARCHAR(200),
  PUBLICATIONDATE DATE,
  PRIMARY KEY (ID)
);

ALTER TABLE PUBLICATIONS ADD FOREIGN KEY (IDAUTHOR) REFERENCES AUTHORS (ID) on delete cascade;
  
-- Create sequence 
create sequence SEQ_PUBLICATIONS;  


-- Create table
create table ADDRESS
(
  ID                bigint not null,
  IDAUTHOR			bigint not null,
  ADDRESS            VARCHAR(200),
  CITY            VARCHAR(200),
  PRIMARY KEY (ID)
);

ALTER TABLE ADDRESS ADD FOREIGN KEY (IDAUTHOR) REFERENCES AUTHORS (ID) on delete cascade;

-- Create sequence 
create sequence SEQ_ADDRESS;  
-- END SECTION 3 ----------------------------------------


-- BEGIN SECTION 4 --------------------------------------
-- Create schema 
create schema ZOO;

-- Create table
create table ZOO.PEOPLE
(
  id          numeric not null,
  firstname        varchar(100),
  lastname     varchar(100),
  birthdate timestamp,
  deathdate date,
  firstblob	BYTEA ,
  secondblob BYTEA, 
  firstclob TEXT
);

alter table ZOO.PEOPLE  add constraint ZOO_IDX_PEOPLE primary key (ID);

create sequence ZOO_SEQ_PEOPLE
start with 1
increment by 1;
-- END SECTION 4 ----------------------------------------


-- BEGIN SECTION 5 --------------------------------------

-- Create table with autogenerated pk
create table AUTO_ID
(
  ID bigserial primary key,
  VALUE varchar(100)
);

-- END SECTION 5 ----------------------------------------


-- BEGIN SECTION 6 --------------------------------------
-- tables to test the @VERSION annotation

create table DATA_VERSION_INT
(
  ID bigserial primary key,
  DATA varchar(100),
  VERSION NUMERIC
);

create table DATA_VERSION_TIMESTAMP
(
  ID bigserial primary key,
  DATA varchar(100),
  VERSION timestamp
);

-- END SECTION 6 ----------------------------------------


-- BEGIN SECTION 7 --------------------------------------
-- tables to test queries using WrapperTypes

create table WRAPPER_TYPE_TABLE
(
  ID bigserial primary key,
  START_DATE timestamp,
  NOW timestamp,
  END_DATE timestamp,
  VALID numeric(1)
);

-- END SECTION 7 ----------------------------------------


-- BEGIN SECTION 8 --------------------------------------
-- aggregated beans

create table USERS
(
  ID bigserial primary key,
  FIRSTNAME      VARCHAR(200) not null,
  LASTNAME   VARCHAR(200) not null,
  AGE bigint,
  VERSION NUMERIC not null
);

create table USER_COUNTRY
(
  ID bigserial primary key,
  NAME VARCHAR(200) not null
);

create table USER_ADDRESS
(
  USER_ID bigint not null,
  COUNTRY_ID bigint not null,
  FOREIGN KEY (USER_ID) REFERENCES USERS (ID),
  FOREIGN KEY (COUNTRY_ID) REFERENCES USER_COUNTRY (ID)
);

create table USER_JOB
(
  ID bigserial primary key,
  USER_ID bigint not null,
  NAME VARCHAR(200),
  FOREIGN KEY (USER_ID) REFERENCES USERS (ID)
);

create table USER_JOB_TASK
(
  ID bigserial primary key,
  USER_JOB_ID bigint not null,
  NAME VARCHAR(200),
  FOREIGN KEY (USER_JOB_ID) REFERENCES USER_JOB (ID)
);

-- BEGIN SECTION 8 --------------------------------------


commit;




© 2015 - 2025 Weber Informatics LLC | Privacy Policy