Файл: phpBB3/install/schemas/oracle_schema.sql
Строк: 1072
/*
* DO NOT EDIT THIS FILE, IT IS GENERATED
*
* To change the contents
of this file, edit
* phpBB/develop/create_schema_files.php and
* run it.
*/
/*
This first section is optional, however its probably the best
method
of running phpBB on Oracle. If you already have a tablespace and
user created
for phpBB you can leave this section commented out!
The
first set of statements create a phpBB tablespace and a phpBB user,
make
sure you change the password of the phpBB user before you run this
script!!
*/
/*
CREATE TABLESPACE "PHPBB"
LOGGING
DATAFILE
'E:\ORACLE\ORADATA\LOCAL\PHPBB.ora'
SIZE 10M
AUTOEXTEND ON NEXT
10M
MAXSIZE 100M;
CREATE USER "PHPBB"
PROFILE
"DEFAULT"
IDENTIFIED BY "phpbb_password"
DEFAULT
TABLESPACE "PHPBB"
QUOTA UNLIMITED ON "PHPBB"
ACCOUNT
UNLOCK;
GRANT ANALYZE ANY TO "PHPBB";
GRANT CREATE SEQUENCE TO
"PHPBB";
GRANT CREATE SESSION TO "PHPBB";
GRANT CREATE
TABLE TO "PHPBB";
GRANT CREATE TRIGGER TO
"PHPBB";
GRANT CREATE VIEW TO "PHPBB";
GRANT
"CONNECT" TO "PHPBB";
COMMIT;
DISCONNECT;
CONNECT
phpbb/phpbb_password;
*/
/*
Table: 'phpbb_attachments'
*/
CREATE TABLE
phpbb_attachments (
attach_id number(8) NOT NULL,
post_msg_id number(8)
DEFAULT '0' NOT NULL,
topic_id number(8) DEFAULT '0' NOT NULL,
in_message
number(1) DEFAULT '0' NOT NULL,
poster_id number(8) DEFAULT '0' NOT
NULL,
is_orphan number(1) DEFAULT '1' NOT NULL,
physical_filename
varchar2(255) DEFAULT '' ,
real_filename varchar2(255) DEFAULT ''
,
download_count number(8) DEFAULT '0' NOT NULL,
attach_comment clob
DEFAULT '' ,
extension varchar2(100) DEFAULT '' ,
mimetype varchar2(100)
DEFAULT '' ,
filesize number(20) DEFAULT '0' NOT NULL,
filetime
number(11) DEFAULT '0' NOT NULL,
thumbnail number(1) DEFAULT '0' NOT
NULL,
CONSTRAINT pk_phpbb_attachments PRIMARY KEY (attach_id)
)
/
CREATE
INDEX phpbb_attachments_filetime ON phpbb_attachments (filetime)
/
CREATE
INDEX phpbb_attachments_post_msg_id ON phpbb_attachments
(post_msg_id)
/
CREATE INDEX phpbb_attachments_topic_id ON
phpbb_attachments (topic_id)
/
CREATE INDEX phpbb_attachments_poster_id ON
phpbb_attachments (poster_id)
/
CREATE INDEX phpbb_attachments_is_orphan ON
phpbb_attachments (is_orphan)
/
CREATE SEQUENCE
phpbb_attachments_seq
/
CREATE OR REPLACE TRIGGER
t_phpbb_attachments
BEFORE INSERT ON phpbb_attachments
FOR EACH ROW WHEN
(
new.attach_id IS NULL OR new.attach_id = 0
)
BEGIN
SELECT
phpbb_attachments_seq.nextval
INTO :new.attach_id
FROM
dual;
END;
/
/*
Table: 'phpbb_acl_groups'
*/
CREATE TABLE
phpbb_acl_groups (
group_id number(8) DEFAULT '0' NOT NULL,
forum_id
number(8) DEFAULT '0' NOT NULL,
auth_option_id number(8) DEFAULT '0' NOT
NULL,
auth_role_id number(8) DEFAULT '0' NOT NULL,
auth_setting number(2)
DEFAULT '0' NOT NULL
)
/
CREATE INDEX phpbb_acl_groups_group_id ON
phpbb_acl_groups (group_id)
/
CREATE INDEX phpbb_acl_groups_auth_opt_id ON
phpbb_acl_groups (auth_option_id)
/
CREATE INDEX
phpbb_acl_groups_auth_role_id ON phpbb_acl_groups
(auth_role_id)
/
/*
Table: 'phpbb_acl_options'
*/
CREATE TABLE
phpbb_acl_options (
auth_option_id number(8) NOT NULL,
auth_option
varchar2(50) DEFAULT '' ,
is_global number(1) DEFAULT '0' NOT
NULL,
is_local number(1) DEFAULT '0' NOT NULL,
founder_only number(1)
DEFAULT '0' NOT NULL,
CONSTRAINT pk_phpbb_acl_options PRIMARY KEY
(auth_option_id),
CONSTRAINT u_phpbb_auth_option UNIQUE
(auth_option)
)
/
CREATE SEQUENCE phpbb_acl_options_seq
/
CREATE OR
REPLACE TRIGGER t_phpbb_acl_options
BEFORE INSERT ON phpbb_acl_options
FOR
EACH ROW WHEN (
new.auth_option_id IS NULL OR new.auth_option_id =
0
)
BEGIN
SELECT phpbb_acl_options_seq.nextval
INTO
:new.auth_option_id
FROM dual;
END;
/
/*
Table:
'phpbb_acl_roles'
*/
CREATE TABLE phpbb_acl_roles (
role_id number(8) NOT
NULL,
role_name varchar2(765) DEFAULT '' ,
role_description clob DEFAULT
'' ,
role_type varchar2(10) DEFAULT '' ,
role_order number(4) DEFAULT '0'
NOT NULL,
CONSTRAINT pk_phpbb_acl_roles PRIMARY KEY (role_id)
)
/
CREATE
INDEX phpbb_acl_roles_role_type ON phpbb_acl_roles (role_type)
/
CREATE
INDEX phpbb_acl_roles_role_order ON phpbb_acl_roles (role_order)
/
CREATE
SEQUENCE phpbb_acl_roles_seq
/
CREATE OR REPLACE TRIGGER
t_phpbb_acl_roles
BEFORE INSERT ON phpbb_acl_roles
FOR EACH ROW WHEN
(
new.role_id IS NULL OR new.role_id = 0
)
BEGIN
SELECT
phpbb_acl_roles_seq.nextval
INTO :new.role_id
FROM
dual;
END;
/
/*
Table: 'phpbb_acl_roles_data'
*/
CREATE TABLE
phpbb_acl_roles_data (
role_id number(8) DEFAULT '0' NOT
NULL,
auth_option_id number(8) DEFAULT '0' NOT NULL,
auth_setting
number(2) DEFAULT '0' NOT NULL,
CONSTRAINT pk_phpbb_acl_roles_data PRIMARY
KEY (role_id, auth_option_id)
)
/
CREATE INDEX
phpbb_acl_roles_data_ath_op_id ON phpbb_acl_roles_data
(auth_option_id)
/
/*
Table: 'phpbb_acl_users'
*/
CREATE TABLE
phpbb_acl_users (
user_id number(8) DEFAULT '0' NOT NULL,
forum_id
number(8) DEFAULT '0' NOT NULL,
auth_option_id number(8) DEFAULT '0' NOT
NULL,
auth_role_id number(8) DEFAULT '0' NOT NULL,
auth_setting number(2)
DEFAULT '0' NOT NULL
)
/
CREATE INDEX phpbb_acl_users_user_id ON
phpbb_acl_users (user_id)
/
CREATE INDEX phpbb_acl_users_auth_option_id ON
phpbb_acl_users (auth_option_id)
/
CREATE INDEX
phpbb_acl_users_auth_role_id ON phpbb_acl_users
(auth_role_id)
/
/*
Table: 'phpbb_banlist'
*/
CREATE TABLE phpbb_banlist
(
ban_id number(8) NOT NULL,
ban_userid number(8) DEFAULT '0' NOT
NULL,
ban_ip varchar2(40) DEFAULT '' ,
ban_email varchar2(300) DEFAULT ''
,
ban_start number(11) DEFAULT '0' NOT NULL,
ban_end number(11) DEFAULT
'0' NOT NULL,
ban_exclude number(1) DEFAULT '0' NOT NULL,
ban_reason
varchar2(765) DEFAULT '' ,
ban_give_reason varchar2(765) DEFAULT ''
,
CONSTRAINT pk_phpbb_banlist PRIMARY KEY (ban_id)
)
/
CREATE INDEX
phpbb_banlist_ban_end ON phpbb_banlist (ban_end)
/
CREATE INDEX
phpbb_banlist_ban_user ON phpbb_banlist (ban_userid, ban_exclude)
/
CREATE
INDEX phpbb_banlist_ban_email ON phpbb_banlist (ban_email,
ban_exclude)
/
CREATE INDEX phpbb_banlist_ban_ip ON phpbb_banlist (ban_ip,
ban_exclude)
/
CREATE SEQUENCE phpbb_banlist_seq
/
CREATE OR REPLACE
TRIGGER t_phpbb_banlist
BEFORE INSERT ON phpbb_banlist
FOR EACH ROW WHEN
(
new.ban_id IS NULL OR new.ban_id = 0
)
BEGIN
SELECT
phpbb_banlist_seq.nextval
INTO :new.ban_id
FROM dual;
END;
/
/*
Table:
'phpbb_bbcodes'
*/
CREATE TABLE phpbb_bbcodes (
bbcode_id number(4)
DEFAULT '0' NOT NULL,
bbcode_tag varchar2(16) DEFAULT ''
,
bbcode_helpline varchar2(765) DEFAULT '' ,
display_on_posting number(1)
DEFAULT '0' NOT NULL,
bbcode_match clob DEFAULT '' ,
bbcode_tpl clob
DEFAULT '' ,
first_pass_match clob DEFAULT '' ,
first_pass_replace clob
DEFAULT '' ,
second_pass_match clob DEFAULT '' ,
second_pass_replace clob
DEFAULT '' ,
CONSTRAINT pk_phpbb_bbcodes PRIMARY KEY
(bbcode_id)
)
/
CREATE INDEX phpbb_bbcodes_display_on_post ON
phpbb_bbcodes (display_on_posting)
/
/*
Table:
'phpbb_bookmarks'
*/
CREATE TABLE phpbb_bookmarks (
topic_id number(8)
DEFAULT '0' NOT NULL,
user_id number(8) DEFAULT '0' NOT NULL,
CONSTRAINT
pk_phpbb_bookmarks PRIMARY KEY (topic_id, user_id)
)
/
/*
Table:
'phpbb_bots'
*/
CREATE TABLE phpbb_bots (
bot_id number(8) NOT
NULL,
bot_active number(1) DEFAULT '1' NOT NULL,
bot_name varchar2(765)
DEFAULT '' ,
user_id number(8) DEFAULT '0' NOT NULL,
bot_agent
varchar2(255) DEFAULT '' ,
bot_ip varchar2(255) DEFAULT '' ,
CONSTRAINT
pk_phpbb_bots PRIMARY KEY (bot_id)
)
/
CREATE INDEX phpbb_bots_bot_active
ON phpbb_bots (bot_active)
/
CREATE SEQUENCE phpbb_bots_seq
/
CREATE OR
REPLACE TRIGGER t_phpbb_bots
BEFORE INSERT ON phpbb_bots
FOR EACH ROW WHEN
(
new.bot_id IS NULL OR new.bot_id = 0
)
BEGIN
SELECT
phpbb_bots_seq.nextval
INTO :new.bot_id
FROM dual;
END;
/
/*
Table:
'phpbb_config'
*/
CREATE TABLE phpbb_config (
config_name varchar2(255)
DEFAULT '' ,
config_value varchar2(765) DEFAULT '' ,
is_dynamic number(1)
DEFAULT '0' NOT NULL,
CONSTRAINT pk_phpbb_config PRIMARY KEY
(config_name)
)
/
CREATE INDEX phpbb_config_is_dynamic ON phpbb_config
(is_dynamic)
/
/*
Table: 'phpbb_confirm'
*/
CREATE TABLE phpbb_confirm
(
confirm_id char(32) DEFAULT '' ,
session_id char(32) DEFAULT ''
,
confirm_type number(3) DEFAULT '0' NOT NULL,
code varchar2(8) DEFAULT
'' ,
seed number(10) DEFAULT '0' NOT NULL,
attempts number(8) DEFAULT '0'
NOT NULL,
CONSTRAINT pk_phpbb_confirm PRIMARY KEY (session_id,
confirm_id)
)
/
CREATE INDEX phpbb_confirm_confirm_type ON phpbb_confirm
(confirm_type)
/
/*
Table: 'phpbb_disallow'
*/
CREATE TABLE
phpbb_disallow (
disallow_id number(8) NOT NULL,
disallow_username
varchar2(765) DEFAULT '' ,
CONSTRAINT pk_phpbb_disallow PRIMARY KEY
(disallow_id)
)
/
CREATE SEQUENCE phpbb_disallow_seq
/
CREATE OR REPLACE
TRIGGER t_phpbb_disallow
BEFORE INSERT ON phpbb_disallow
FOR EACH ROW WHEN
(
new.disallow_id IS NULL OR new.disallow_id = 0
)
BEGIN
SELECT
phpbb_disallow_seq.nextval
INTO :new.disallow_id
FROM
dual;
END;
/
/*
Table: 'phpbb_drafts'
*/
CREATE TABLE phpbb_drafts
(
draft_id number(8) NOT NULL,
user_id number(8) DEFAULT '0' NOT
NULL,
topic_id number(8) DEFAULT '0' NOT NULL,
forum_id number(8) DEFAULT
'0' NOT NULL,
save_time number(11) DEFAULT '0' NOT NULL,
draft_subject
varchar2(765) DEFAULT '' ,
draft_message clob DEFAULT '' ,
CONSTRAINT
pk_phpbb_drafts PRIMARY KEY (draft_id)
)
/
CREATE INDEX
phpbb_drafts_save_time ON phpbb_drafts (save_time)
/
CREATE SEQUENCE
phpbb_drafts_seq
/
CREATE OR REPLACE TRIGGER t_phpbb_drafts
BEFORE INSERT
ON phpbb_drafts
FOR EACH ROW WHEN (
new.draft_id IS NULL OR new.draft_id =
0
)
BEGIN
SELECT phpbb_drafts_seq.nextval
INTO :new.draft_id
FROM
dual;
END;
/
/*
Table: 'phpbb_extensions'
*/
CREATE TABLE
phpbb_extensions (
extension_id number(8) NOT NULL,
group_id number(8)
DEFAULT '0' NOT NULL,
extension varchar2(100) DEFAULT '' ,
CONSTRAINT
pk_phpbb_extensions PRIMARY KEY (extension_id)
)
/
CREATE SEQUENCE
phpbb_extensions_seq
/
CREATE OR REPLACE TRIGGER t_phpbb_extensions
BEFORE
INSERT ON phpbb_extensions
FOR EACH ROW WHEN (
new.extension_id IS NULL OR
new.extension_id = 0
)
BEGIN
SELECT phpbb_extensions_seq.nextval
INTO
:new.extension_id
FROM dual;
END;
/
/*
Table:
'phpbb_extension_groups'
*/
CREATE TABLE phpbb_extension_groups (
group_id
number(8) NOT NULL,
group_name varchar2(765) DEFAULT '' ,
cat_id
number(2) DEFAULT '0' NOT NULL,
allow_group number(1) DEFAULT '0' NOT
NULL,
download_mode number(1) DEFAULT '1' NOT NULL,
upload_icon
varchar2(255) DEFAULT '' ,
max_filesize number(20) DEFAULT '0' NOT
NULL,
allowed_forums clob DEFAULT '' ,
allow_in_pm number(1) DEFAULT '0'
NOT NULL,
CONSTRAINT pk_phpbb_extension_groups PRIMARY KEY
(group_id)
)
/
CREATE SEQUENCE phpbb_extension_groups_seq
/
CREATE OR
REPLACE TRIGGER t_phpbb_extension_groups
BEFORE INSERT ON
phpbb_extension_groups
FOR EACH ROW WHEN (
new.group_id IS NULL OR
new.group_id = 0
)
BEGIN
SELECT phpbb_extension_groups_seq.nextval
INTO
:new.group_id
FROM dual;
END;
/
/*
Table: 'phpbb_forums'
*/
CREATE
TABLE phpbb_forums (
forum_id number(8) NOT NULL,
parent_id number(8)
DEFAULT '0' NOT NULL,
left_id number(8) DEFAULT '0' NOT NULL,
right_id
number(8) DEFAULT '0' NOT NULL,
forum_parents clob DEFAULT ''
,
forum_name varchar2(765) DEFAULT '' ,
forum_desc clob DEFAULT ''
,
forum_desc_bitfield varchar2(255) DEFAULT '' ,
forum_desc_options
number(11) DEFAULT '7' NOT NULL,
forum_desc_uid varchar2(8) DEFAULT ''
,
forum_link varchar2(765) DEFAULT '' ,
forum_password varchar2(120)
DEFAULT '' ,
forum_style number(8) DEFAULT '0' NOT NULL,
forum_image
varchar2(255) DEFAULT '' ,
forum_rules clob DEFAULT '' ,
forum_rules_link
varchar2(765) DEFAULT '' ,
forum_rules_bitfield varchar2(255) DEFAULT ''
,
forum_rules_options number(11) DEFAULT '7' NOT NULL,
forum_rules_uid
varchar2(8) DEFAULT '' ,
forum_topics_per_page number(4) DEFAULT '0' NOT
NULL,
forum_type number(4) DEFAULT '0' NOT NULL,
forum_status number(4)
DEFAULT '0' NOT NULL,
forum_posts number(8) DEFAULT '0' NOT
NULL,
forum_topics number(8) DEFAULT '0' NOT NULL,
forum_topics_real
number(8) DEFAULT '0' NOT NULL,
forum_last_post_id number(8) DEFAULT '0'
NOT NULL,
forum_last_poster_id number(8) DEFAULT '0' NOT
NULL,
forum_last_post_subject varchar2(765) DEFAULT ''
,
forum_last_post_time number(11) DEFAULT '0' NOT
NULL,
forum_last_poster_name varchar2(765) DEFAULT ''
,
forum_last_poster_colour varchar2(6) DEFAULT '' ,
forum_flags number(4)
DEFAULT '32' NOT NULL,
forum_options number(20) DEFAULT '0' NOT
NULL,
display_subforum_list number(1) DEFAULT '1' NOT
NULL,
display_on_index number(1) DEFAULT '1' NOT NULL,
enable_indexing
number(1) DEFAULT '1' NOT NULL,
enable_icons number(1) DEFAULT '1' NOT
NULL,
enable_prune number(1) DEFAULT '0' NOT NULL,
prune_next number(11)
DEFAULT '0' NOT NULL,
prune_days number(8) DEFAULT '0' NOT
NULL,
prune_viewed number(8) DEFAULT '0' NOT NULL,
prune_freq number(8)
DEFAULT '0' NOT NULL,
CONSTRAINT pk_phpbb_forums PRIMARY KEY
(forum_id)
)
/
CREATE INDEX phpbb_forums_left_right_id ON phpbb_forums
(left_id, right_id)
/
CREATE INDEX phpbb_forums_forum_lastpost_id ON
phpbb_forums (forum_last_post_id)
/
CREATE SEQUENCE
phpbb_forums_seq
/
CREATE OR REPLACE TRIGGER t_phpbb_forums
BEFORE INSERT
ON phpbb_forums
FOR EACH ROW WHEN (
new.forum_id IS NULL OR new.forum_id =
0
)
BEGIN
SELECT phpbb_forums_seq.nextval
INTO :new.forum_id
FROM
dual;
END;
/
/*
Table: 'phpbb_forums_access'
*/
CREATE TABLE
phpbb_forums_access (
forum_id number(8) DEFAULT '0' NOT NULL,
user_id
number(8) DEFAULT '0' NOT NULL,
session_id char(32) DEFAULT ''
,
CONSTRAINT pk_phpbb_forums_access PRIMARY KEY (forum_id, user_id,
session_id)
)
/
/*
Table: 'phpbb_forums_track'
*/
CREATE TABLE
phpbb_forums_track (
user_id number(8) DEFAULT '0' NOT NULL,
forum_id
number(8) DEFAULT '0' NOT NULL,
mark_time number(11) DEFAULT '0' NOT
NULL,
CONSTRAINT pk_phpbb_forums_track PRIMARY KEY (user_id,
forum_id)
)
/
/*
Table: 'phpbb_forums_watch'
*/
CREATE TABLE
phpbb_forums_watch (
forum_id number(8) DEFAULT '0' NOT NULL,
user_id
number(8) DEFAULT '0' NOT NULL,
notify_status number(1) DEFAULT '0' NOT
NULL
)
/
CREATE INDEX phpbb_forums_watch_forum_id ON phpbb_forums_watch
(forum_id)
/
CREATE INDEX phpbb_forums_watch_user_id ON phpbb_forums_watch
(user_id)
/
CREATE INDEX phpbb_forums_watch_notify_stat ON
phpbb_forums_watch (notify_status)
/
/*
Table: 'phpbb_groups'
*/
CREATE
TABLE phpbb_groups (
group_id number(8) NOT NULL,
group_type number(4)
DEFAULT '1' NOT NULL,
group_founder_manage number(1) DEFAULT '0' NOT
NULL,
group_skip_auth number(1) DEFAULT '0' NOT NULL,
group_name
varchar2(255) DEFAULT '' ,
group_desc clob DEFAULT ''
,
group_desc_bitfield varchar2(255) DEFAULT '' ,
group_desc_options
number(11) DEFAULT '7' NOT NULL,
group_desc_uid varchar2(8) DEFAULT ''
,
group_display number(1) DEFAULT '0' NOT NULL,
group_avatar
varchar2(255) DEFAULT '' ,
group_avatar_type number(2) DEFAULT '0' NOT
NULL,
group_avatar_width number(4) DEFAULT '0' NOT
NULL,
group_avatar_height number(4) DEFAULT '0' NOT NULL,
group_rank
number(8) DEFAULT '0' NOT NULL,
group_colour varchar2(6) DEFAULT ''
,
group_sig_chars number(8) DEFAULT '0' NOT NULL,
group_receive_pm
number(1) DEFAULT '0' NOT NULL,
group_message_limit number(8) DEFAULT '0'
NOT NULL,
group_max_recipients number(8) DEFAULT '0' NOT
NULL,
group_legend number(1) DEFAULT '1' NOT NULL,
CONSTRAINT
pk_phpbb_groups PRIMARY KEY (group_id)
)
/
CREATE INDEX
phpbb_groups_group_legend_name ON phpbb_groups (group_legend,
group_name)
/
CREATE SEQUENCE phpbb_groups_seq
/
CREATE OR REPLACE
TRIGGER t_phpbb_groups
BEFORE INSERT ON phpbb_groups
FOR EACH ROW WHEN
(
new.group_id IS NULL OR new.group_id = 0
)
BEGIN
SELECT
phpbb_groups_seq.nextval
INTO :new.group_id
FROM
dual;
END;
/
/*
Table: 'phpbb_icons'
*/
CREATE TABLE phpbb_icons
(
icons_id number(8) NOT NULL,
icons_url varchar2(255) DEFAULT ''
,
icons_width number(4) DEFAULT '0' NOT NULL,
icons_height number(4)
DEFAULT '0' NOT NULL,
icons_order number(8) DEFAULT '0' NOT
NULL,
display_on_posting number(1) DEFAULT '1' NOT NULL,
CONSTRAINT
pk_phpbb_icons PRIMARY KEY (icons_id)
)
/
CREATE INDEX
phpbb_icons_display_on_posting ON phpbb_icons
(display_on_posting)
/
CREATE SEQUENCE phpbb_icons_seq
/
CREATE OR
REPLACE TRIGGER t_phpbb_icons
BEFORE INSERT ON phpbb_icons
FOR EACH ROW
WHEN (
new.icons_id IS NULL OR new.icons_id = 0
)
BEGIN
SELECT
phpbb_icons_seq.nextval
INTO :new.icons_id
FROM dual;
END;
/
/*
Table:
'phpbb_lang'
*/
CREATE TABLE phpbb_lang (
lang_id number(4) NOT
NULL,
lang_iso varchar2(30) DEFAULT '' ,
lang_dir varchar2(30) DEFAULT ''
,
lang_english_name varchar2(300) DEFAULT '' ,
lang_local_name
varchar2(765) DEFAULT '' ,
lang_author varchar2(765) DEFAULT ''
,
CONSTRAINT pk_phpbb_lang PRIMARY KEY (lang_id)
)
/
CREATE INDEX
phpbb_lang_lang_iso ON phpbb_lang (lang_iso)
/
CREATE SEQUENCE
phpbb_lang_seq
/
CREATE OR REPLACE TRIGGER t_phpbb_lang
BEFORE INSERT ON
phpbb_lang
FOR EACH ROW WHEN (
new.lang_id IS NULL OR new.lang_id =
0
)
BEGIN
SELECT phpbb_lang_seq.nextval
INTO :new.lang_id
FROM
dual;
END;
/
/*
Table: 'phpbb_log'
*/
CREATE TABLE phpbb_log (
log_id
number(8) NOT NULL,
log_type number(4) DEFAULT '0' NOT NULL,
user_id
number(8) DEFAULT '0' NOT NULL,
forum_id number(8) DEFAULT '0' NOT
NULL,
topic_id number(8) DEFAULT '0' NOT NULL,
reportee_id number(8)
DEFAULT '0' NOT NULL,
log_ip varchar2(40) DEFAULT '' ,
log_time
number(11) DEFAULT '0' NOT NULL,
log_operation clob DEFAULT '' ,
log_data
clob DEFAULT '' ,
CONSTRAINT pk_phpbb_log PRIMARY KEY (log_id)
)
/
CREATE
INDEX phpbb_log_log_type ON phpbb_log (log_type)
/
CREATE INDEX
phpbb_log_forum_id ON phpbb_log (forum_id)
/
CREATE INDEX
phpbb_log_topic_id ON phpbb_log (topic_id)
/
CREATE INDEX
phpbb_log_reportee_id ON phpbb_log (reportee_id)
/
CREATE INDEX
phpbb_log_user_id ON phpbb_log (user_id)
/
CREATE SEQUENCE
phpbb_log_seq
/
CREATE OR REPLACE TRIGGER t_phpbb_log
BEFORE INSERT ON
phpbb_log
FOR EACH ROW WHEN (
new.log_id IS NULL OR new.log_id =
0
)
BEGIN
SELECT phpbb_log_seq.nextval
INTO :new.log_id
FROM
dual;
END;
/
/*
Table: 'phpbb_login_attempts'
*/
CREATE TABLE
phpbb_login_attempts (
attempt_ip varchar2(40) DEFAULT ''
,
attempt_browser varchar2(150) DEFAULT '' ,
attempt_forwarded_for
varchar2(255) DEFAULT '' ,
attempt_time number(11) DEFAULT '0' NOT
NULL,
user_id number(8) DEFAULT '0' NOT NULL,
username varchar2(765)
DEFAULT '0' NOT NULL,
username_clean varchar2(255) DEFAULT '0' NOT
NULL
)
/
CREATE INDEX phpbb_login_attempts_att_ip ON phpbb_login_attempts
(attempt_ip, attempt_time)
/
CREATE INDEX phpbb_login_attempts_att_for ON
phpbb_login_attempts (attempt_forwarded_for, attempt_time)
/
CREATE INDEX
phpbb_login_attempts_att_time ON phpbb_login_attempts
(attempt_time)
/
CREATE INDEX phpbb_login_attempts_user_id ON
phpbb_login_attempts (user_id)
/
/*
Table:
'phpbb_moderator_cache'
*/
CREATE TABLE phpbb_moderator_cache (
forum_id
number(8) DEFAULT '0' NOT NULL,
user_id number(8) DEFAULT '0' NOT
NULL,
username varchar2(765) DEFAULT '' ,
group_id number(8) DEFAULT '0'
NOT NULL,
group_name varchar2(765) DEFAULT '' ,
display_on_index
number(1) DEFAULT '1' NOT NULL
)
/
CREATE INDEX
phpbb_moderator_cache_disp_idx ON phpbb_moderator_cache
(display_on_index)
/
CREATE INDEX phpbb_moderator_cache_forum_id ON
phpbb_moderator_cache (forum_id)
/
/*
Table: 'phpbb_modules'
*/
CREATE
TABLE phpbb_modules (
module_id number(8) NOT NULL,
module_enabled
number(1) DEFAULT '1' NOT NULL,
module_display number(1) DEFAULT '1' NOT
NULL,
module_basename varchar2(255) DEFAULT '' ,
module_class
varchar2(10) DEFAULT '' ,
parent_id number(8) DEFAULT '0' NOT
NULL,
left_id number(8) DEFAULT '0' NOT NULL,
right_id number(8) DEFAULT
'0' NOT NULL,
module_langname varchar2(255) DEFAULT '' ,
module_mode
varchar2(255) DEFAULT '' ,
module_auth varchar2(255) DEFAULT ''
,
CONSTRAINT pk_phpbb_modules PRIMARY KEY (module_id)
)
/
CREATE INDEX
phpbb_modules_left_right_id ON phpbb_modules (left_id, right_id)
/
CREATE
INDEX phpbb_modules_module_enabled ON phpbb_modules
(module_enabled)
/
CREATE INDEX phpbb_modules_class_left_id ON
phpbb_modules (module_class, left_id)
/
CREATE SEQUENCE
phpbb_modules_seq
/
CREATE OR REPLACE TRIGGER t_phpbb_modules
BEFORE
INSERT ON phpbb_modules
FOR EACH ROW WHEN (
new.module_id IS NULL OR
new.module_id = 0
)
BEGIN
SELECT phpbb_modules_seq.nextval
INTO
:new.module_id
FROM dual;
END;
/
/*
Table:
'phpbb_poll_options'
*/
CREATE TABLE phpbb_poll_options (
poll_option_id
number(4) DEFAULT '0' NOT NULL,
topic_id number(8) DEFAULT '0' NOT
NULL,
poll_option_text clob DEFAULT '' ,
poll_option_total number(8)
DEFAULT '0' NOT NULL
)
/
CREATE INDEX phpbb_poll_options_poll_opt_id ON
phpbb_poll_options (poll_option_id)
/
CREATE INDEX
phpbb_poll_options_topic_id ON phpbb_poll_options (topic_id)
/
/*
Table:
'phpbb_poll_votes'
*/
CREATE TABLE phpbb_poll_votes (
topic_id number(8)
DEFAULT '0' NOT NULL,
poll_option_id number(4) DEFAULT '0' NOT
NULL,
vote_user_id number(8) DEFAULT '0' NOT NULL,
vote_user_ip
varchar2(40) DEFAULT ''
)
/
CREATE INDEX phpbb_poll_votes_topic_id ON
phpbb_poll_votes (topic_id)
/
CREATE INDEX phpbb_poll_votes_vote_user_id ON
phpbb_poll_votes (vote_user_id)
/
CREATE INDEX
phpbb_poll_votes_vote_user_ip ON phpbb_poll_votes
(vote_user_ip)
/
/*
Table: 'phpbb_posts'
*/
CREATE TABLE phpbb_posts
(
post_id number(8) NOT NULL,
topic_id number(8) DEFAULT '0' NOT
NULL,
forum_id number(8) DEFAULT '0' NOT NULL,
poster_id number(8)
DEFAULT '0' NOT NULL,
icon_id number(8) DEFAULT '0' NOT NULL,
poster_ip
varchar2(40) DEFAULT '' ,
post_time number(11) DEFAULT '0' NOT
NULL,
post_approved number(1) DEFAULT '1' NOT NULL,
post_reported
number(1) DEFAULT '0' NOT NULL,
enable_bbcode number(1) DEFAULT '1' NOT
NULL,
enable_smilies number(1) DEFAULT '1' NOT NULL,
enable_magic_url
number(1) DEFAULT '1' NOT NULL,
enable_sig number(1) DEFAULT '1' NOT
NULL,
post_username varchar2(765) DEFAULT '' ,
post_subject varchar2(765)
DEFAULT '' ,
post_text clob DEFAULT '' ,
post_checksum varchar2(32)
DEFAULT '' ,
post_attachment number(1) DEFAULT '0' NOT
NULL,
bbcode_bitfield varchar2(255) DEFAULT '' ,
bbcode_uid varchar2(8)
DEFAULT '' ,
post_postcount number(1) DEFAULT '1' NOT
NULL,
post_edit_time number(11) DEFAULT '0' NOT NULL,
post_edit_reason
varchar2(765) DEFAULT '' ,
post_edit_user number(8) DEFAULT '0' NOT
NULL,
post_edit_count number(4) DEFAULT '0' NOT NULL,
post_edit_locked
number(1) DEFAULT '0' NOT NULL,
CONSTRAINT pk_phpbb_posts PRIMARY KEY
(post_id)
)
/
CREATE INDEX phpbb_posts_forum_id ON phpbb_posts
(forum_id)
/
CREATE INDEX phpbb_posts_topic_id ON phpbb_posts
(topic_id)
/
CREATE INDEX phpbb_posts_poster_ip ON phpbb_posts
(poster_ip)
/
CREATE INDEX phpbb_posts_poster_id ON phpbb_posts
(poster_id)
/
CREATE INDEX phpbb_posts_post_approved ON phpbb_posts
(post_approved)
/
CREATE INDEX phpbb_posts_post_username ON phpbb_posts
(post_username)
/
CREATE INDEX phpbb_posts_tid_post_time ON phpbb_posts
(topic_id, post_time)
/
CREATE SEQUENCE phpbb_posts_seq
/
CREATE OR
REPLACE TRIGGER t_phpbb_posts
BEFORE INSERT ON phpbb_posts
FOR EACH ROW
WHEN (
new.post_id IS NULL OR new.post_id = 0
)
BEGIN
SELECT
phpbb_posts_seq.nextval
INTO :new.post_id
FROM dual;
END;
/
/*
Table:
'phpbb_privmsgs'
*/
CREATE TABLE phpbb_privmsgs (
msg_id number(8) NOT
NULL,
root_level number(8) DEFAULT '0' NOT NULL,
author_id number(8)
DEFAULT '0' NOT NULL,
icon_id number(8) DEFAULT '0' NOT NULL,
author_ip
varchar2(40) DEFAULT '' ,
message_time number(11) DEFAULT '0' NOT
NULL,
enable_bbcode number(1) DEFAULT '1' NOT NULL,
enable_smilies
number(1) DEFAULT '1' NOT NULL,
enable_magic_url number(1) DEFAULT '1' NOT
NULL,
enable_sig number(1) DEFAULT '1' NOT NULL,
message_subject
varchar2(765) DEFAULT '' ,
message_text clob DEFAULT ''
,
message_edit_reason varchar2(765) DEFAULT '' ,
message_edit_user
number(8) DEFAULT '0' NOT NULL,
message_attachment number(1) DEFAULT '0'
NOT NULL,
bbcode_bitfield varchar2(255) DEFAULT '' ,
bbcode_uid
varchar2(8) DEFAULT '' ,
message_edit_time number(11) DEFAULT '0' NOT
NULL,
message_edit_count number(4) DEFAULT '0' NOT NULL,
to_address clob
DEFAULT '' ,
bcc_address clob DEFAULT '' ,
message_reported number(1)
DEFAULT '0' NOT NULL,
CONSTRAINT pk_phpbb_privmsgs PRIMARY KEY
(msg_id)
)
/
CREATE INDEX phpbb_privmsgs_author_ip ON phpbb_privmsgs
(author_ip)
/
CREATE INDEX phpbb_privmsgs_message_time ON phpbb_privmsgs
(message_time)
/
CREATE INDEX phpbb_privmsgs_author_id ON phpbb_privmsgs
(author_id)
/
CREATE INDEX phpbb_privmsgs_root_level ON phpbb_privmsgs
(root_level)
/
CREATE SEQUENCE phpbb_privmsgs_seq
/
CREATE OR REPLACE
TRIGGER t_phpbb_privmsgs
BEFORE INSERT ON phpbb_privmsgs
FOR EACH ROW WHEN
(
new.msg_id IS NULL OR new.msg_id = 0
)
BEGIN
SELECT
phpbb_privmsgs_seq.nextval
INTO :new.msg_id
FROM
dual;
END;
/
/*
Table: 'phpbb_privmsgs_folder'
*/
CREATE TABLE
phpbb_privmsgs_folder (
folder_id number(8) NOT NULL,
user_id number(8)
DEFAULT '0' NOT NULL,
folder_name varchar2(765) DEFAULT '' ,
pm_count
number(8) DEFAULT '0' NOT NULL,
CONSTRAINT pk_phpbb_privmsgs_folder
PRIMARY KEY (folder_id)
)
/
CREATE INDEX phpbb_privmsgs_folder_user_id ON
phpbb_privmsgs_folder (user_id)
/
CREATE SEQUENCE
phpbb_privmsgs_folder_seq
/
CREATE OR REPLACE TRIGGER
t_phpbb_privmsgs_folder
BEFORE INSERT ON phpbb_privmsgs_folder
FOR EACH ROW
WHEN (
new.folder_id IS NULL OR new.folder_id = 0
)
BEGIN
SELECT
phpbb_privmsgs_folder_seq.nextval
INTO :new.folder_id
FROM
dual;
END;
/
/*
Table: 'phpbb_privmsgs_rules'
*/
CREATE TABLE
phpbb_privmsgs_rules (
rule_id number(8) NOT NULL,
user_id number(8)
DEFAULT '0' NOT NULL,
rule_check number(8) DEFAULT '0' NOT
NULL,
rule_connection number(8) DEFAULT '0' NOT NULL,
rule_string
varchar2(765) DEFAULT '' ,
rule_user_id number(8) DEFAULT '0' NOT
NULL,
rule_group_id number(8) DEFAULT '0' NOT NULL,
rule_action number(8)
DEFAULT '0' NOT NULL,
rule_folder_id number(11) DEFAULT '0' NOT
NULL,
CONSTRAINT pk_phpbb_privmsgs_rules PRIMARY KEY (rule_id)
)
/
CREATE
INDEX phpbb_privmsgs_rules_user_id ON phpbb_privmsgs_rules
(user_id)
/
CREATE SEQUENCE phpbb_privmsgs_rules_seq
/
CREATE OR REPLACE
TRIGGER t_phpbb_privmsgs_rules
BEFORE INSERT ON phpbb_privmsgs_rules
FOR
EACH ROW WHEN (
new.rule_id IS NULL OR new.rule_id = 0
)
BEGIN
SELECT
phpbb_privmsgs_rules_seq.nextval
INTO :new.rule_id
FROM
dual;
END;
/
/*
Table: 'phpbb_privmsgs_to'
*/
CREATE TABLE
phpbb_privmsgs_to (
msg_id number(8) DEFAULT '0' NOT NULL,
user_id
number(8) DEFAULT '0' NOT NULL,
author_id number(8) DEFAULT '0' NOT
NULL,
pm_deleted number(1) DEFAULT '0' NOT NULL,
pm_new number(1) DEFAULT
'1' NOT NULL,
pm_unread number(1) DEFAULT '1' NOT NULL,
pm_replied
number(1) DEFAULT '0' NOT NULL,
pm_marked number(1) DEFAULT '0' NOT
NULL,
pm_forwarded number(1) DEFAULT '0' NOT NULL,
folder_id number(11)
DEFAULT '0' NOT NULL
)
/
CREATE INDEX phpbb_privmsgs_to_msg_id ON
phpbb_privmsgs_to (msg_id)
/
CREATE INDEX phpbb_privmsgs_to_author_id ON
phpbb_privmsgs_to (author_id)
/
CREATE INDEX phpbb_privmsgs_to_usr_flder_id
ON phpbb_privmsgs_to (user_id, folder_id)
/
/*
Table:
'phpbb_profile_fields'
*/
CREATE TABLE phpbb_profile_fields (
field_id
number(8) NOT NULL,
field_name varchar2(765) DEFAULT '' ,
field_type
number(4) DEFAULT '0' NOT NULL,
field_ident varchar2(20) DEFAULT ''
,
field_length varchar2(20) DEFAULT '' ,
field_minlen varchar2(255)
DEFAULT '' ,
field_maxlen varchar2(255) DEFAULT '' ,
field_novalue
varchar2(765) DEFAULT '' ,
field_default_value varchar2(765) DEFAULT ''
,
field_validation varchar2(60) DEFAULT '' ,
field_required number(1)
DEFAULT '0' NOT NULL,
field_show_novalue number(1) DEFAULT '0' NOT
NULL,
field_show_on_reg number(1) DEFAULT '0' NOT NULL,
field_show_on_vt
number(1) DEFAULT '0' NOT NULL,
field_show_profile number(1) DEFAULT '0'
NOT NULL,
field_hide number(1) DEFAULT '0' NOT NULL,
field_no_view
number(1) DEFAULT '0' NOT NULL,
field_active number(1) DEFAULT '0' NOT
NULL,
field_order number(8) DEFAULT '0' NOT NULL,
CONSTRAINT
pk_phpbb_profile_fields PRIMARY KEY (field_id)
)
/
CREATE INDEX
phpbb_profile_fields_fld_type ON phpbb_profile_fields (field_type)
/
CREATE
INDEX phpbb_profile_fields_fld_ordr ON phpbb_profile_fields
(field_order)
/
CREATE SEQUENCE phpbb_profile_fields_seq
/
CREATE OR
REPLACE TRIGGER t_phpbb_profile_fields
BEFORE INSERT ON
phpbb_profile_fields
FOR EACH ROW WHEN (
new.field_id IS NULL OR
new.field_id = 0
)
BEGIN
SELECT phpbb_profile_fields_seq.nextval
INTO
:new.field_id
FROM dual;
END;
/
/*
Table:
'phpbb_profile_fields_data'
*/
CREATE TABLE phpbb_profile_fields_data
(
user_id number(8) DEFAULT '0' NOT NULL,
CONSTRAINT
pk_phpbb_profile_fields_data PRIMARY KEY (user_id)
)
/
/*
Table:
'phpbb_profile_fields_lang'
*/
CREATE TABLE phpbb_profile_fields_lang
(
field_id number(8) DEFAULT '0' NOT NULL,
lang_id number(8) DEFAULT '0'
NOT NULL,
option_id number(8) DEFAULT '0' NOT NULL,
field_type number(4)
DEFAULT '0' NOT NULL,
lang_value varchar2(765) DEFAULT '' ,
CONSTRAINT
pk_phpbb_profile_fields_lang PRIMARY KEY (field_id, lang_id,
option_id)
)
/
/*
Table: 'phpbb_profile_lang'
*/
CREATE TABLE
phpbb_profile_lang (
field_id number(8) DEFAULT '0' NOT NULL,
lang_id
number(8) DEFAULT '0' NOT NULL,
lang_name varchar2(765) DEFAULT ''
,
lang_explain clob DEFAULT '' ,
lang_default_value varchar2(765) DEFAULT
'' ,
CONSTRAINT pk_phpbb_profile_lang PRIMARY KEY (field_id,
lang_id)
)
/
/*
Table: 'phpbb_ranks'
*/
CREATE TABLE phpbb_ranks
(
rank_id number(8) NOT NULL,
rank_title varchar2(765) DEFAULT ''
,
rank_min number(8) DEFAULT '0' NOT NULL,
rank_special number(1) DEFAULT
'0' NOT NULL,
rank_image varchar2(255) DEFAULT '' ,
CONSTRAINT
pk_phpbb_ranks PRIMARY KEY (rank_id)
)
/
CREATE SEQUENCE
phpbb_ranks_seq
/
CREATE OR REPLACE TRIGGER t_phpbb_ranks
BEFORE INSERT ON
phpbb_ranks
FOR EACH ROW WHEN (
new.rank_id IS NULL OR new.rank_id =
0
)
BEGIN
SELECT phpbb_ranks_seq.nextval
INTO :new.rank_id
FROM
dual;
END;
/
/*
Table: 'phpbb_reports'
*/
CREATE TABLE phpbb_reports
(
report_id number(8) NOT NULL,
reason_id number(4) DEFAULT '0' NOT
NULL,
post_id number(8) DEFAULT '0' NOT NULL,
pm_id number(8) DEFAULT '0'
NOT NULL,
user_id number(8) DEFAULT '0' NOT NULL,
user_notify number(1)
DEFAULT '0' NOT NULL,
report_closed number(1) DEFAULT '0' NOT
NULL,
report_time number(11) DEFAULT '0' NOT NULL,
report_text clob
DEFAULT '' ,
CONSTRAINT pk_phpbb_reports PRIMARY KEY
(report_id)
)
/
CREATE INDEX phpbb_reports_post_id ON phpbb_reports
(post_id)
/
CREATE INDEX phpbb_reports_pm_id ON phpbb_reports
(pm_id)
/
CREATE SEQUENCE phpbb_reports_seq
/
CREATE OR REPLACE TRIGGER
t_phpbb_reports
BEFORE INSERT ON phpbb_reports
FOR EACH ROW WHEN
(
new.report_id IS NULL OR new.report_id = 0
)
BEGIN
SELECT
phpbb_reports_seq.nextval
INTO :new.report_id
FROM
dual;
END;
/
/*
Table: 'phpbb_reports_reasons'
*/
CREATE TABLE
phpbb_reports_reasons (
reason_id number(4) NOT NULL,
reason_title
varchar2(765) DEFAULT '' ,
reason_description clob DEFAULT ''
,
reason_order number(4) DEFAULT '0' NOT NULL,
CONSTRAINT
pk_phpbb_reports_reasons PRIMARY KEY (reason_id)
)
/
CREATE SEQUENCE
phpbb_reports_reasons_seq
/
CREATE OR REPLACE TRIGGER
t_phpbb_reports_reasons
BEFORE INSERT ON phpbb_reports_reasons
FOR EACH ROW
WHEN (
new.reason_id IS NULL OR new.reason_id = 0
)
BEGIN
SELECT
phpbb_reports_reasons_seq.nextval
INTO :new.reason_id
FROM
dual;
END;
/
/*
Table: 'phpbb_search_results'
*/
CREATE TABLE
phpbb_search_results (
search_key varchar2(32) DEFAULT '' ,
search_time
number(11) DEFAULT '0' NOT NULL,
search_keywords clob DEFAULT ''
,
search_authors clob DEFAULT '' ,
CONSTRAINT pk_phpbb_search_results
PRIMARY KEY (search_key)
)
/
/*
Table: 'phpbb_search_wordlist'
*/
CREATE
TABLE phpbb_search_wordlist (
word_id number(8) NOT NULL,
word_text
varchar2(765) DEFAULT '' ,
word_common number(1) DEFAULT '0' NOT
NULL,
word_count number(8) DEFAULT '0' NOT NULL,
CONSTRAINT
pk_phpbb_search_wordlist PRIMARY KEY (word_id),
CONSTRAINT u_phpbb_wrd_txt
UNIQUE (word_text)
)
/
CREATE INDEX phpbb_search_wordlist_wrd_cnt ON
phpbb_search_wordlist (word_count)
/
CREATE SEQUENCE
phpbb_search_wordlist_seq
/
CREATE OR REPLACE TRIGGER
t_phpbb_search_wordlist
BEFORE INSERT ON phpbb_search_wordlist
FOR EACH ROW
WHEN (
new.word_id IS NULL OR new.word_id = 0
)
BEGIN
SELECT
phpbb_search_wordlist_seq.nextval
INTO :new.word_id
FROM
dual;
END;
/
/*
Table: 'phpbb_search_wordmatch'
*/
CREATE TABLE
phpbb_search_wordmatch (
post_id number(8) DEFAULT '0' NOT NULL,
word_id
number(8) DEFAULT '0' NOT NULL,
title_match number(1) DEFAULT '0' NOT
NULL,
CONSTRAINT u_phpbb_unq_mtch UNIQUE (word_id, post_id,
title_match)
)
/
CREATE INDEX phpbb_search_wordmatch_word_id ON
phpbb_search_wordmatch (word_id)
/
CREATE INDEX
phpbb_search_wordmatch_post_id ON phpbb_search_wordmatch
(post_id)
/
/*
Table: 'phpbb_sessions'
*/
CREATE TABLE phpbb_sessions
(
session_id char(32) DEFAULT '' ,
session_user_id number(8) DEFAULT '0'
NOT NULL,
session_forum_id number(8) DEFAULT '0' NOT
NULL,
session_last_visit number(11) DEFAULT '0' NOT NULL,
session_start
number(11) DEFAULT '0' NOT NULL,
session_time number(11) DEFAULT '0' NOT
NULL,
session_ip varchar2(40) DEFAULT '' ,
session_browser varchar2(150)
DEFAULT '' ,
session_forwarded_for varchar2(255) DEFAULT ''
,
session_page varchar2(765) DEFAULT '' ,
session_viewonline number(1)
DEFAULT '1' NOT NULL,
session_autologin number(1) DEFAULT '0' NOT
NULL,
session_admin number(1) DEFAULT '0' NOT NULL,
CONSTRAINT
pk_phpbb_sessions PRIMARY KEY (session_id)
)
/
CREATE INDEX
phpbb_sessions_session_time ON phpbb_sessions (session_time)
/
CREATE INDEX
phpbb_sessions_session_user_id ON phpbb_sessions (session_user_id)
/
CREATE
INDEX phpbb_sessions_session_fid ON phpbb_sessions
(session_forum_id)
/
/*
Table: 'phpbb_sessions_keys'
*/
CREATE TABLE
phpbb_sessions_keys (
key_id char(32) DEFAULT '' ,
user_id number(8)
DEFAULT '0' NOT NULL,
last_ip varchar2(40) DEFAULT '' ,
last_login
number(11) DEFAULT '0' NOT NULL,
CONSTRAINT pk_phpbb_sessions_keys PRIMARY
KEY (key_id, user_id)
)
/
CREATE INDEX phpbb_sessions_keys_last_login ON
phpbb_sessions_keys (last_login)
/
/*
Table: 'phpbb_sitelist'
*/
CREATE
TABLE phpbb_sitelist (
site_id number(8) NOT NULL,
site_ip varchar2(40)
DEFAULT '' ,
site_hostname varchar2(255) DEFAULT '' ,
ip_exclude
number(1) DEFAULT '0' NOT NULL,
CONSTRAINT pk_phpbb_sitelist PRIMARY KEY
(site_id)
)
/
CREATE SEQUENCE phpbb_sitelist_seq
/
CREATE OR REPLACE
TRIGGER t_phpbb_sitelist
BEFORE INSERT ON phpbb_sitelist
FOR EACH ROW WHEN
(
new.site_id IS NULL OR new.site_id = 0
)
BEGIN
SELECT
phpbb_sitelist_seq.nextval
INTO :new.site_id
FROM
dual;
END;
/
/*
Table: 'phpbb_smilies'
*/
CREATE TABLE phpbb_smilies
(
smiley_id number(8) NOT NULL,
code varchar2(150) DEFAULT '' ,
emotion
varchar2(150) DEFAULT '' ,
smiley_url varchar2(50) DEFAULT ''
,
smiley_width number(4) DEFAULT '0' NOT NULL,
smiley_height number(4)
DEFAULT '0' NOT NULL,
smiley_order number(8) DEFAULT '0' NOT
NULL,
display_on_posting number(1) DEFAULT '1' NOT NULL,
CONSTRAINT
pk_phpbb_smilies PRIMARY KEY (smiley_id)
)
/
CREATE INDEX
phpbb_smilies_display_on_post ON phpbb_smilies
(display_on_posting)
/
CREATE SEQUENCE phpbb_smilies_seq
/
CREATE OR
REPLACE TRIGGER t_phpbb_smilies
BEFORE INSERT ON phpbb_smilies
FOR EACH ROW
WHEN (
new.smiley_id IS NULL OR new.smiley_id = 0
)
BEGIN
SELECT
phpbb_smilies_seq.nextval
INTO :new.smiley_id
FROM
dual;
END;
/
/*
Table: 'phpbb_styles'
*/
CREATE TABLE phpbb_styles
(
style_id number(8) NOT NULL,
style_name varchar2(765) DEFAULT ''
,
style_copyright varchar2(765) DEFAULT '' ,
style_active number(1)
DEFAULT '1' NOT NULL,
template_id number(8) DEFAULT '0' NOT
NULL,
theme_id number(8) DEFAULT '0' NOT NULL,
imageset_id number(8)
DEFAULT '0' NOT NULL,
CONSTRAINT pk_phpbb_styles PRIMARY KEY
(style_id),
CONSTRAINT u_phpbb_style_name UNIQUE (style_name)
)
/
CREATE
INDEX phpbb_styles_template_id ON phpbb_styles (template_id)
/
CREATE INDEX
phpbb_styles_theme_id ON phpbb_styles (theme_id)
/
CREATE INDEX
phpbb_styles_imageset_id ON phpbb_styles (imageset_id)
/
CREATE SEQUENCE
phpbb_styles_seq
/
CREATE OR REPLACE TRIGGER t_phpbb_styles
BEFORE INSERT
ON phpbb_styles
FOR EACH ROW WHEN (
new.style_id IS NULL OR new.style_id =
0
)
BEGIN
SELECT phpbb_styles_seq.nextval
INTO :new.style_id
FROM
dual;
END;
/
/*
Table: 'phpbb_styles_template'
*/
CREATE TABLE
phpbb_styles_template (
template_id number(8) NOT NULL,
template_name
varchar2(765) DEFAULT '' ,
template_copyright varchar2(765) DEFAULT ''
,
template_path varchar2(100) DEFAULT '' ,
bbcode_bitfield varchar2(255)
DEFAULT 'kNg=' NOT NULL,
template_storedb number(1) DEFAULT '0' NOT
NULL,
template_inherits_id number(4) DEFAULT '0' NOT
NULL,
template_inherit_path varchar2(255) DEFAULT '' ,
CONSTRAINT
pk_phpbb_styles_template PRIMARY KEY (template_id),
CONSTRAINT
u_phpbb_tmplte_nm UNIQUE (template_name)
)
/
CREATE SEQUENCE
phpbb_styles_template_seq
/
CREATE OR REPLACE TRIGGER
t_phpbb_styles_template
BEFORE INSERT ON phpbb_styles_template
FOR EACH ROW
WHEN (
new.template_id IS NULL OR new.template_id = 0
)
BEGIN
SELECT
phpbb_styles_template_seq.nextval
INTO :new.template_id
FROM
dual;
END;
/
/*
Table: 'phpbb_styles_template_data'
*/
CREATE TABLE
phpbb_styles_template_data (
template_id number(8) DEFAULT '0' NOT
NULL,
template_filename varchar2(100) DEFAULT '' ,
template_included clob
DEFAULT '' ,
template_mtime number(11) DEFAULT '0' NOT
NULL,
template_data clob DEFAULT ''
)
/
CREATE INDEX
phpbb_styles_template_data_tid ON phpbb_styles_template_data
(template_id)
/
CREATE INDEX phpbb_styles_template_data_tfn ON
phpbb_styles_template_data (template_filename)
/
/*
Table:
'phpbb_styles_theme'
*/
CREATE TABLE phpbb_styles_theme (
theme_id
number(8) NOT NULL,
theme_name varchar2(765) DEFAULT '' ,
theme_copyright
varchar2(765) DEFAULT '' ,
theme_path varchar2(100) DEFAULT ''
,
theme_storedb number(1) DEFAULT '0' NOT NULL,
theme_mtime number(11)
DEFAULT '0' NOT NULL,
theme_data clob DEFAULT '' ,
CONSTRAINT
pk_phpbb_styles_theme PRIMARY KEY (theme_id),
CONSTRAINT
u_phpbb_theme_name UNIQUE (theme_name)
)
/
CREATE SEQUENCE
phpbb_styles_theme_seq
/
CREATE OR REPLACE TRIGGER
t_phpbb_styles_theme
BEFORE INSERT ON phpbb_styles_theme
FOR EACH ROW WHEN
(
new.theme_id IS NULL OR new.theme_id = 0
)
BEGIN
SELECT
phpbb_styles_theme_seq.nextval
INTO :new.theme_id
FROM
dual;
END;
/
/*
Table: 'phpbb_styles_imageset'
*/
CREATE TABLE
phpbb_styles_imageset (
imageset_id number(8) NOT NULL,
imageset_name
varchar2(765) DEFAULT '' ,
imageset_copyright varchar2(765) DEFAULT ''
,
imageset_path varchar2(100) DEFAULT '' ,
CONSTRAINT
pk_phpbb_styles_imageset PRIMARY KEY (imageset_id),
CONSTRAINT
u_phpbb_imgset_nm UNIQUE (imageset_name)
)
/
CREATE SEQUENCE
phpbb_styles_imageset_seq
/
CREATE OR REPLACE TRIGGER
t_phpbb_styles_imageset
BEFORE INSERT ON phpbb_styles_imageset
FOR EACH ROW
WHEN (
new.imageset_id IS NULL OR new.imageset_id = 0
)
BEGIN
SELECT
phpbb_styles_imageset_seq.nextval
INTO :new.imageset_id
FROM
dual;
END;
/
/*
Table: 'phpbb_styles_imageset_data'
*/
CREATE TABLE
phpbb_styles_imageset_data (
image_id number(8) NOT NULL,
image_name
varchar2(200) DEFAULT '' ,
image_filename varchar2(200) DEFAULT ''
,
image_lang varchar2(30) DEFAULT '' ,
image_height number(4) DEFAULT '0'
NOT NULL,
image_width number(4) DEFAULT '0' NOT NULL,
imageset_id
number(8) DEFAULT '0' NOT NULL,
CONSTRAINT pk_phpbb_styles_imageset_data
PRIMARY KEY (image_id)
)
/
CREATE INDEX phpbb_styles_imageset_data_i_d ON
phpbb_styles_imageset_data (imageset_id)
/
CREATE SEQUENCE
phpbb_styles_imageset_data_seq
/
CREATE OR REPLACE TRIGGER
t_phpbb_styles_imageset_data
BEFORE INSERT ON
phpbb_styles_imageset_data
FOR EACH ROW WHEN (
new.image_id IS NULL OR
new.image_id = 0
)
BEGIN
SELECT
phpbb_styles_imageset_data_seq.nextval
INTO :new.image_id
FROM
dual;
END;
/
/*
Table: 'phpbb_topics'
*/
CREATE TABLE phpbb_topics
(
topic_id number(8) NOT NULL,
forum_id number(8) DEFAULT '0' NOT
NULL,
icon_id number(8) DEFAULT '0' NOT NULL,
topic_attachment number(1)
DEFAULT '0' NOT NULL,
topic_approved number(1) DEFAULT '1' NOT
NULL,
topic_reported number(1) DEFAULT '0' NOT NULL,
topic_title
varchar2(765) DEFAULT '' ,
topic_poster number(8) DEFAULT '0' NOT
NULL,
topic_time number(11) DEFAULT '0' NOT NULL,
topic_time_limit
number(11) DEFAULT '0' NOT NULL,
topic_views number(8) DEFAULT '0' NOT
NULL,
topic_replies number(8) DEFAULT '0' NOT NULL,
topic_replies_real
number(8) DEFAULT '0' NOT NULL,
topic_status number(3) DEFAULT '0' NOT
NULL,
topic_type number(3) DEFAULT '0' NOT NULL,
topic_first_post_id
number(8) DEFAULT '0' NOT NULL,
topic_first_poster_name varchar2(765)
DEFAULT '' ,
topic_first_poster_colour varchar2(6) DEFAULT ''
,
topic_last_post_id number(8) DEFAULT '0' NOT NULL,
topic_last_poster_id
number(8) DEFAULT '0' NOT NULL,
topic_last_poster_name varchar2(765)
DEFAULT '' ,
topic_last_poster_colour varchar2(6) DEFAULT ''
,
topic_last_post_subject varchar2(765) DEFAULT '' ,
topic_last_post_time
number(11) DEFAULT '0' NOT NULL,
topic_last_view_time number(11) DEFAULT
'0' NOT NULL,
topic_moved_id number(8) DEFAULT '0' NOT NULL,
topic_bumped
number(1) DEFAULT '0' NOT NULL,
topic_bumper number(8) DEFAULT '0' NOT
NULL,
poll_title varchar2(765) DEFAULT '' ,
poll_start number(11) DEFAULT
'0' NOT NULL,
poll_length number(11) DEFAULT '0' NOT
NULL,
poll_max_options number(4) DEFAULT '1' NOT NULL,
poll_last_vote
number(11) DEFAULT '0' NOT NULL,
poll_vote_change number(1) DEFAULT '0'
NOT NULL,
CONSTRAINT pk_phpbb_topics PRIMARY KEY (topic_id)
)
/
CREATE
INDEX phpbb_topics_forum_id ON phpbb_topics (forum_id)
/
CREATE INDEX
phpbb_topics_forum_id_type ON phpbb_topics (forum_id, topic_type)
/
CREATE
INDEX phpbb_topics_last_post_time ON phpbb_topics
(topic_last_post_time)
/
CREATE INDEX phpbb_topics_topic_approved ON
phpbb_topics (topic_approved)
/
CREATE INDEX phpbb_topics_forum_appr_last
ON phpbb_topics (forum_id, topic_approved, topic_last_post_id)
/
CREATE
INDEX phpbb_topics_fid_time_moved ON phpbb_topics (forum_id,
topic_last_post_time, topic_moved_id)
/
CREATE SEQUENCE
phpbb_topics_seq
/
CREATE OR REPLACE TRIGGER t_phpbb_topics
BEFORE INSERT
ON phpbb_topics
FOR EACH ROW WHEN (
new.topic_id IS NULL OR new.topic_id =
0
)
BEGIN
SELECT phpbb_topics_seq.nextval
INTO :new.topic_id
FROM
dual;
END;
/
/*
Table: 'phpbb_topics_track'
*/
CREATE TABLE
phpbb_topics_track (
user_id number(8) DEFAULT '0' NOT NULL,
topic_id
number(8) DEFAULT '0' NOT NULL,
forum_id number(8) DEFAULT '0' NOT
NULL,
mark_time number(11) DEFAULT '0' NOT NULL,
CONSTRAINT
pk_phpbb_topics_track PRIMARY KEY (user_id, topic_id)
)
/
CREATE INDEX
phpbb_topics_track_topic_id ON phpbb_topics_track (topic_id)
/
CREATE INDEX
phpbb_topics_track_forum_id ON phpbb_topics_track (forum_id)
/
/*
Table:
'phpbb_topics_posted'
*/
CREATE TABLE phpbb_topics_posted (
user_id
number(8) DEFAULT '0' NOT NULL,
topic_id number(8) DEFAULT '0' NOT
NULL,
topic_posted number(1) DEFAULT '0' NOT NULL,
CONSTRAINT
pk_phpbb_topics_posted PRIMARY KEY (user_id, topic_id)
)
/
/*
Table:
'phpbb_topics_watch'
*/
CREATE TABLE phpbb_topics_watch (
topic_id
number(8) DEFAULT '0' NOT NULL,
user_id number(8) DEFAULT '0' NOT
NULL,
notify_status number(1) DEFAULT '0' NOT NULL
)
/
CREATE INDEX
phpbb_topics_watch_topic_id ON phpbb_topics_watch (topic_id)
/
CREATE INDEX
phpbb_topics_watch_user_id ON phpbb_topics_watch (user_id)
/
CREATE INDEX
phpbb_topics_watch_notify_stat ON phpbb_topics_watch
(notify_status)
/
/*
Table: 'phpbb_user_group'
*/
CREATE TABLE
phpbb_user_group (
group_id number(8) DEFAULT '0' NOT NULL,
user_id
number(8) DEFAULT '0' NOT NULL,
group_leader number(1) DEFAULT '0' NOT
NULL,
user_pending number(1) DEFAULT '1' NOT NULL
)
/
CREATE INDEX
phpbb_user_group_group_id ON phpbb_user_group (group_id)
/
CREATE INDEX
phpbb_user_group_user_id ON phpbb_user_group (user_id)
/
CREATE INDEX
phpbb_user_group_group_leader ON phpbb_user_group
(group_leader)
/
/*
Table: 'phpbb_users'
*/
CREATE TABLE phpbb_users
(
user_id number(8) NOT NULL,
user_type number(2) DEFAULT '0' NOT
NULL,
group_id number(8) DEFAULT '3' NOT NULL,
user_permissions clob
DEFAULT '' ,
user_perm_from number(8) DEFAULT '0' NOT NULL,
user_ip
varchar2(40) DEFAULT '' ,
user_regdate number(11) DEFAULT '0' NOT
NULL,
username varchar2(255) DEFAULT '' ,
username_clean varchar2(255)
DEFAULT '' ,
user_password varchar2(120) DEFAULT '' ,
user_passchg
number(11) DEFAULT '0' NOT NULL,
user_pass_convert number(1) DEFAULT '0'
NOT NULL,
user_email varchar2(300) DEFAULT '' ,
user_email_hash
number(20) DEFAULT '0' NOT NULL,
user_birthday varchar2(10) DEFAULT ''
,
user_lastvisit number(11) DEFAULT '0' NOT NULL,
user_lastmark
number(11) DEFAULT '0' NOT NULL,
user_lastpost_time number(11) DEFAULT '0'
NOT NULL,
user_lastpage varchar2(600) DEFAULT '' ,
user_last_confirm_key
varchar2(10) DEFAULT '' ,
user_last_search number(11) DEFAULT '0' NOT
NULL,
user_warnings number(4) DEFAULT '0' NOT NULL,
user_last_warning
number(11) DEFAULT '0' NOT NULL,
user_login_attempts number(4) DEFAULT '0'
NOT NULL,
user_inactive_reason number(2) DEFAULT '0' NOT
NULL,
user_inactive_time number(11) DEFAULT '0' NOT NULL,
user_posts
number(8) DEFAULT '0' NOT NULL,
user_lang varchar2(30) DEFAULT ''
,
user_timezone number(5, 2) DEFAULT '0' NOT NULL,
user_dst number(1)
DEFAULT '0' NOT NULL,
user_dateformat varchar2(90) DEFAULT 'd M Y H:i' NOT
NULL,
user_style number(8) DEFAULT '0' NOT NULL,
user_rank number(8)
DEFAULT '0' NOT NULL,
user_colour varchar2(6) DEFAULT ''
,
user_new_privmsg number(4) DEFAULT '0' NOT NULL,
user_unread_privmsg
number(4) DEFAULT '0' NOT NULL,
user_last_privmsg number(11) DEFAULT '0'
NOT NULL,
user_message_rules number(1) DEFAULT '0' NOT
NULL,
user_full_folder number(11) DEFAULT '-3' NOT NULL,
user_emailtime
number(11) DEFAULT '0' NOT NULL,
user_topic_show_days number(4) DEFAULT
'0' NOT NULL,
user_topic_sortby_type varchar2(1) DEFAULT 't' NOT
NULL,
user_topic_sortby_dir varchar2(1) DEFAULT 'd' NOT
NULL,
user_post_show_days number(4) DEFAULT '0' NOT
NULL,
user_post_sortby_type varchar2(1) DEFAULT 't' NOT
NULL,
user_post_sortby_dir varchar2(1) DEFAULT 'a' NOT NULL,
user_notify
number(1) DEFAULT '0' NOT NULL,
user_notify_pm number(1) DEFAULT '1' NOT
NULL,
user_notify_type number(4) DEFAULT '0' NOT NULL,
user_allow_pm
number(1) DEFAULT '1' NOT NULL,
user_allow_viewonline number(1) DEFAULT
'1' NOT NULL,
user_allow_viewemail number(1) DEFAULT '1' NOT
NULL,
user_allow_massemail number(1) DEFAULT '1' NOT NULL,
user_options
number(11) DEFAULT '230271' NOT NULL,
user_avatar varchar2(255) DEFAULT ''
,
user_avatar_type number(2) DEFAULT '0' NOT NULL,
user_avatar_width
number(4) DEFAULT '0' NOT NULL,
user_avatar_height number(4) DEFAULT '0'
NOT NULL,
user_sig clob DEFAULT '' ,
user_sig_bbcode_uid varchar2(8)
DEFAULT '' ,
user_sig_bbcode_bitfield varchar2(255) DEFAULT ''
,
user_from varchar2(300) DEFAULT '' ,
user_icq varchar2(15) DEFAULT ''
,
user_aim varchar2(765) DEFAULT '' ,
user_yim varchar2(765) DEFAULT ''
,
user_msnm varchar2(765) DEFAULT '' ,
user_jabber varchar2(765) DEFAULT
'' ,
user_website varchar2(600) DEFAULT '' ,
user_occ clob DEFAULT ''
,
user_interests clob DEFAULT '' ,
user_actkey varchar2(32) DEFAULT ''
,
user_newpasswd varchar2(120) DEFAULT '' ,
user_form_salt varchar2(96)
DEFAULT '' ,
user_new number(1) DEFAULT '1' NOT NULL,
user_reminded
number(4) DEFAULT '0' NOT NULL,
user_reminded_time number(11) DEFAULT '0'
NOT NULL,
CONSTRAINT pk_phpbb_users PRIMARY KEY (user_id),
CONSTRAINT
u_phpbb_username_clean UNIQUE (username_clean)
)
/
CREATE INDEX
phpbb_users_user_birthday ON phpbb_users (user_birthday)
/
CREATE INDEX
phpbb_users_user_email_hash ON phpbb_users (user_email_hash)
/
CREATE INDEX
phpbb_users_user_type ON phpbb_users (user_type)
/
CREATE SEQUENCE
phpbb_users_seq
/
CREATE OR REPLACE TRIGGER t_phpbb_users
BEFORE INSERT ON
phpbb_users
FOR EACH ROW WHEN (
new.user_id IS NULL OR new.user_id =
0
)
BEGIN
SELECT phpbb_users_seq.nextval
INTO :new.user_id
FROM
dual;
END;
/
/*
Table: 'phpbb_warnings'
*/
CREATE TABLE phpbb_warnings
(
warning_id number(8) NOT NULL,
user_id number(8) DEFAULT '0' NOT
NULL,
post_id number(8) DEFAULT '0' NOT NULL,
log_id number(8) DEFAULT
'0' NOT NULL,
warning_time number(11) DEFAULT '0' NOT NULL,
CONSTRAINT
pk_phpbb_warnings PRIMARY KEY (warning_id)
)
/
CREATE SEQUENCE
phpbb_warnings_seq
/
CREATE OR REPLACE TRIGGER t_phpbb_warnings
BEFORE
INSERT ON phpbb_warnings
FOR EACH ROW WHEN (
new.warning_id IS NULL OR
new.warning_id = 0
)
BEGIN
SELECT phpbb_warnings_seq.nextval
INTO
:new.warning_id
FROM dual;
END;
/
/*
Table: 'phpbb_words'
*/
CREATE
TABLE phpbb_words (
word_id number(8) NOT NULL,
word varchar2(765)
DEFAULT '' ,
replacement varchar2(765) DEFAULT '' ,
CONSTRAINT
pk_phpbb_words PRIMARY KEY (word_id)
)
/
CREATE SEQUENCE
phpbb_words_seq
/
CREATE OR REPLACE TRIGGER t_phpbb_words
BEFORE INSERT ON
phpbb_words
FOR EACH ROW WHEN (
new.word_id IS NULL OR new.word_id =
0
)
BEGIN
SELECT phpbb_words_seq.nextval
INTO :new.word_id
FROM
dual;
END;
/
/*
Table: 'phpbb_zebra'
*/
CREATE TABLE phpbb_zebra
(
user_id number(8) DEFAULT '0' NOT NULL,
zebra_id number(8) DEFAULT '0'
NOT NULL,
friend number(1) DEFAULT '0' NOT NULL,
foe number(1) DEFAULT
'0' NOT NULL,
CONSTRAINT pk_phpbb_zebra PRIMARY KEY (user_id,
zebra_id)
)
/