/[notice-sender]/trunk/schema.sql
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Contents of /trunk/schema.sql

Parent Directory Parent Directory | Revision Log Revision Log


Revision 18 - (show annotations)
Sun May 15 17:01:19 2005 UTC (18 years, 11 months ago) by dpavlin
File size: 2185 byte(s)
lists now have From: e-mail address

1 create table users (
2 id serial,
3 email text not null,
4 full_name text not null,
5 date timestamp not null default now(),
6 active boolean not null default true,
7 bounce_count int not null default 0,
8 ext_id text,
9 primary key(id)
10 );
11
12 create table lists (
13 id serial,
14 name text not null,
15 email text default '',
16 bounce_limit int not null default 3,
17 date timestamp not null default now(),
18 primary key(id)
19 );
20
21 create index lists_name_ind on lists(name);
22
23 create table user_list (
24 user_id int not null references users(id) on update cascade on delete cascade,
25 list_id int not null references lists(id) on update cascade on delete cascade,
26 date timestamp not null default now(),
27 primary key (user_id, list_id)
28 );
29
30 create table messages (
31 id serial,
32 message text not null,
33 date timestamp not null default now(),
34 primary key(id)
35 );
36
37 create table queue (
38 message_id int not null references messages(id) on update cascade on delete cascade,
39 list_id int not null references lists(id) on update cascade on delete cascade,
40 date timestamp not null default now(),
41 all_sent boolean default false,
42 primary key(message_id, list_id)
43 );
44
45 create table sent (
46 message_id int not null references messages(id) on update cascade on delete cascade,
47 user_id int not null references users(id) on update cascade on delete cascade,
48 date timestamp not null default now(),
49 primary key(message_id, user_id)
50 );
51
52 create table received (
53 id serial,
54 user_id int not null references users(id) on update cascade on delete cascade,
55 message text not null,
56 bounced boolean not null default false,
57 date timestamp not null default now(),
58 primary key (id)
59 );
60
61
62 insert into users (email, full_name) values ('dpavlin@rot13.org', 'DbP');
63 insert into users (email, full_name) values ('dpavlin@gmail.com', 'DbP');
64 insert into users (email, full_name) values ('xxx_doesnt_exist_xxx@gmail.com', 'fake');
65
66 insert into lists (name, email) values ('Just me','my-alter-ego@rot13.org');
67 insert into lists (name, email) values ('All users','announce@example.com');
68
69 insert into user_list (user_id, list_id) select users.id,1 from users limit 1;
70 insert into user_list (user_id, list_id) select users.id,2 from users;

  ViewVC Help
Powered by ViewVC 1.1.26