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

sql.h2_create_db.sql Maven / Gradle / Ivy

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

create table TEMP_TABLE 
(
  ID        NUMBER not null,
  NAME      VARCHAR2(200)
);

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


-- BEGIN SECTION 2 --------------------------------------
-- Create table
create table PEOPLE
(
  id          number not null,
  firstname        varchar2(100),
  lastname     varchar2(100),
  birthdate timestamp(6),
  deathdate date,
  firstblob	BLOB ,
  secondblob BLOB, 
  firstclob CLOB
);

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

create sequence SEQ_PEOPLE start with 1 increment by 1;

-- Create table
create table BLOBCLOB
(
  id          number not null,
  blob_field BLOB ,
  clob_field CLOB
);

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

create sequence SEQ_BLOBCLOB start with 1 increment by 1;
-- END SECTION 2 ----------------------------------------


-- BEGIN SECTION 3 --------------------------------------
-- Create table
create table AUTHORS
(
  id          number not null,
  firstname        varchar2(100),
  lastname     varchar2(100),
  birthdate timestamp(6),
  PRIMARY KEY (ID)
);
  
  -- Create sequence 
create sequence SEQ_AUTHORS start with 1 increment by 1;


-- Create table
create table PUBLICATIONS
(
  ID                NUMBER not null,
  IDAUTHOR	NUMBER not null,
  TITLE            VARCHAR2(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 start with 1 increment by 1;  


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

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

  -- Create sequence 
create sequence SEQ_ADDRESS start with 1 increment by 1;  
-- END SECTION 3 ----------------------------------------


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

-- Create table
create table ZOO.PEOPLE
(
  id          number not null,
  firstname        varchar2(100),
  lastname     varchar2(100),
  birthdate timestamp(6),
  deathdate date,
  firstblob	BLOB ,
  secondblob BLOB, 
  firstclob CLOB
);

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 INTEGER GENERATED BY DEFAULT AS IDENTITY,
  VALUE varchar2(100),
  PRIMARY KEY (ID)
);

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


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

create table DATA_VERSION_INT
(
  ID INTEGER GENERATED BY DEFAULT AS IDENTITY,
  DATA varchar2(100),
  VERSION NUMBER,
  PRIMARY KEY (ID)
);

create table DATA_VERSION_TIMESTAMP
(
  ID INTEGER GENERATED BY DEFAULT AS IDENTITY,
  DATA varchar2(100),
  VERSION timestamp(8),
  PRIMARY KEY (ID)
);

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


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

create table WRAPPER_TYPE_TABLE
(
  ID INTEGER GENERATED BY DEFAULT AS IDENTITY,
  START_DATE timestamp(8),
  NOW timestamp(8),
  END_DATE timestamp(8),
  VALID NUMBER(1),
  PRIMARY KEY (ID)
);

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

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

create table USERS
(
  ID INTEGER GENERATED BY DEFAULT AS IDENTITY,
  FIRSTNAME      VARCHAR2(200) not null,
  AGE INTEGER,
  LASTNAME   VARCHAR2(200) not null,
  VERSION NUMBER not null
);

create table USER_COUNTRY
(
  ID INTEGER GENERATED BY DEFAULT AS IDENTITY,
  NAME VARCHAR2(200) not null
);

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

create table USER_JOB
(
  ID INTEGER GENERATED BY DEFAULT AS IDENTITY,
  USER_ID INTEGER not null,
  NAME VARCHAR2(200),
  FOREIGN KEY (USER_ID) REFERENCES USERS (ID)
);

create table USER_JOB_TASK
(
  ID INTEGER GENERATED BY DEFAULT AS IDENTITY,
  USER_JOB_ID INTEGER not null,
  NAME VARCHAR2(200),
  FOREIGN KEY (USER_JOB_ID) REFERENCES USER_JOB (ID)
);

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

commit;




© 2015 - 2025 Weber Informatics LLC | Privacy Policy