1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
create table if not exists identity (
identity_id integer primary key autoincrement
, identity_public_id uuid
, data text default '{}'
, created_at timestamp not null default current_timestamp
, unique(identity_public_id)
);
create table if not exists email (
email_id integer primary key autoincrement
, address text not null
, unique(address)
);
create table if not exists identity_email (
identity_email_id integer primary key autoincrement
, identity_id integer not null references identity(identity_id)
, email_id integer not null references email(email_id)
, created_at timestamp not null default current_timestamp
, deleted_at timestamp not null default current_timestamp
);
create table if not exists email_validation_request (
email_validation_request_id integer primary key autoincrement
-- uuid
, email_validation_request_public_id text not null
, identity_email_id integer not null references identity_email(identity_email_id)
, is_validated boolean not null default false
, created_at timestamp not null default current_timestamp
, expires_at timestamp
, revoked_at timestamp
);
|