Files
threshold/internal/db/migrations/postgres/03_db.up.sql
T
Jim 27b4d7a034 basic internal db interfaces and Gorm implementation
* db reader and writer interfaces which should allow us to encapsulate the vast majority of database code in this package.

* GormReadWriter implementation of the Reader and Writer interfaces
2020-05-05 13:29:47 -04:00

31 lines
1.3 KiB
SQL

-- create test tables used in the unit tests for the internal/db package
-- these tables (db_test_user, db_test_car, db_test_rental) are not part
-- of the Watchtower domain model... they are simply used for testing the internal/db package
CREATE TABLE if not exists db_test_user (
id bigint generated always as identity primary key,
create_time timestamp with time zone default current_timestamp,
update_time timestamp with time zone default current_timestamp,
public_id text NOT NULL UNIQUE,
friendly_name text UNIQUE,
name text,
phone_number text,
email text
);
CREATE TABLE if not exists db_test_car (
id bigint generated always as identity primary key,
create_time timestamp with time zone default current_timestamp,
update_time timestamp with time zone default current_timestamp,
public_id text NOT NULL UNIQUE,
friendly_name text UNIQUE,
model text,
mpg smallint
);
CREATE TABLE if not exists db_test_rental (
id bigint generated always as identity primary key,
create_time timestamp with time zone default current_timestamp,
update_time timestamp with time zone default current_timestamp,
public_id text NOT NULL UNIQUE,
friendly_name text UNIQUE,
user_id bigint not null REFERENCES db_test_user(id),
car_id bigint not null REFERENCES db_test_car(id)
);