/[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 17 - (show annotations)
Sun May 15 16:32:36 2005 UTC (18 years, 11 months ago) by dpavlin
File size: 2232 byte(s)
added e-mail from: address for list

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 not null,
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 index messages_md5_ind on messages(md5);
38
39 create table queue (
40 message_id int not null references messages(id) on update cascade on delete cascade,
41 list_id int not null references lists(id) on update cascade on delete cascade,
42 date timestamp not null default now(),
43 all_sent boolean default false,
44 primary key(message_id, list_id)
45 );
46
47 create table sent (
48 message_id int not null references messages(id) on update cascade on delete cascade,
49 user_id int not null references users(id) on update cascade on delete cascade,
50 date timestamp not null default now(),
51 primary key(message_id, user_id)
52 );
53
54 create table received (
55 id serial,
56 user_id int not null references users(id) on update cascade on delete cascade,
57 message text not null,
58 bounced boolean not null default false,
59 date timestamp not null default now(),
60 primary key (id)
61 );
62
63
64 insert into users (email, full_name) values ('dpavlin@rot13.org', 'DbP');
65 insert into users (email, full_name) values ('dpavlin@gmail.com', 'DbP');
66 insert into users (email, full_name) values ('xxx_doesnt_exist_xxx@gmail.com', 'fake');
67
68 insert into lists (name, email) values ('Just me','my-alter-ego@rot13.org');
69 insert into lists (name, email) values ('All users','announce@example.com');
70
71 insert into user_list (user_id, list_id) select users.id,1 from users limit 1;
72 insert into user_list (user_id, list_id) select users.id,2 from users;

  ViewVC Help
Powered by ViewVC 1.1.26