CREATE TABLE authors ( id serial primary key, approved_by_id int8 NOT NULL default '0', name varchar(80) default NULL, login varchar(80) default NULL, email varchar(255) default NULL, note text, password varchar(40) default NULL, created_at timestamp default NULL, updated_at timestamp default NULL ); CREATE TABLE books ( id serial primary key, title varchar(255) default NULL, intro text, body text, position int8 default NULL, published int2 default NULL, created_at timestamp default NULL, updated_at timestamp default NULL ); CREATE TABLE chapters ( id serial primary key, book_id int8 references books(id) default NULL, parent_id int8 default NULL, position int8 default NULL, title varchar(255) default NULL, created_at timestamp default NULL, updated_at timestamp default NULL ) ; CREATE TABLE pages ( id serial primary key, chapter_id int8 default NULL references chapters(id), author_id int8 default NULL, title varchar(255) default NULL, body text, position int8 default NULL, created_at timestamp default NULL, updated_at timestamp default NULL ); CREATE TABLE page_revisions ( id serial primary key, page_id int8 references pages(id) default NULL, author_id int8 default NULL, revision int8 default NULL, title varchar(255) default NULL, body text, created_at timestamp default NULL, updated_at timestamp default NULL ); create index position on chapters(position, id); create index pospage on pages(position, id);