diff options
author | Dries Buytaert <dries@buytaert.net> | 2006-08-04 06:58:44 +0000 |
---|---|---|
committer | Dries Buytaert <dries@buytaert.net> | 2006-08-04 06:58:44 +0000 |
commit | a7f67e01de1626b8cba850c325ccf12806d312c0 (patch) | |
tree | e19edd4cfc4bf7e89cd824c6f81a84ae3c700191 /modules | |
parent | 3ffb612aeae073ba00c34181f8255e2702306d0a (diff) | |
download | brdo-a7f67e01de1626b8cba850c325ccf12806d312c0.tar.gz brdo-a7f67e01de1626b8cba850c325ccf12806d312c0.tar.bz2 |
- Patch #76681 by sammys: PostgreSQL support for install system. Woot! :)
Diffstat (limited to 'modules')
-rw-r--r-- | modules/aggregator/aggregator.install | 52 | ||||
-rw-r--r-- | modules/book/book.install | 14 | ||||
-rw-r--r-- | modules/contact/contact.install | 15 | ||||
-rw-r--r-- | modules/drupal/drupal.install | 26 | ||||
-rw-r--r-- | modules/forum/forum.install | 13 | ||||
-rw-r--r-- | modules/locale/locale.install | 31 | ||||
-rw-r--r-- | modules/poll/poll.install | 28 | ||||
-rw-r--r-- | modules/profile/profile.install | 30 | ||||
-rw-r--r-- | modules/search/search.install | 29 | ||||
-rw-r--r-- | modules/statistics/statistics.install | 18 | ||||
-rw-r--r-- | modules/system/system.install | 386 |
11 files changed, 634 insertions, 8 deletions
diff --git a/modules/aggregator/aggregator.install b/modules/aggregator/aggregator.install index 9c9b52f1a..5d042cc02 100644 --- a/modules/aggregator/aggregator.install +++ b/modules/aggregator/aggregator.install @@ -56,5 +56,57 @@ function aggregator_install() { ) /*!40100 DEFAULT CHARACTER SET UTF8 */ "); break; + case 'pgsql': + db_query("CREATE TABLE {aggregator_category} ( + cid serial, + title varchar(255) NOT NULL default '', + description text NOT NULL, + block smallint NOT NULL default '0', + PRIMARY KEY (cid), + UNIQUE (title) + )"); + + db_query("CREATE TABLE {aggregator_category_feed} ( + fid int NOT NULL default '0', + cid int NOT NULL default '0', + PRIMARY KEY (fid,cid) + )"); + + db_query("CREATE TABLE {aggregator_category_item} ( + iid int NOT NULL default '0', + cid int NOT NULL default '0', + PRIMARY KEY (iid,cid) + )"); + + db_query("CREATE TABLE {aggregator_feed} ( + fid serial, + title varchar(255) NOT NULL default '', + url varchar(255) NOT NULL default '', + refresh int NOT NULL default '0', + checked int NOT NULL default '0', + link varchar(255) NOT NULL default '', + description text NOT NULL, + image text NOT NULL, + etag varchar(255) NOT NULL default '', + modified int NOT NULL default '0', + block smallint NOT NULL default '0', + PRIMARY KEY (fid), + UNIQUE (url), + UNIQUE (title) + )"); + + db_query("CREATE TABLE {aggregator_item} ( + iid serial, + fid int NOT NULL default '0', + title varchar(255) NOT NULL default '', + link varchar(255) NOT NULL default '', + author varchar(255) NOT NULL default '', + description text NOT NULL, + timestamp int default NULL, + guid varchar(255), + PRIMARY KEY (iid) + )"); + + break; } } diff --git a/modules/book/book.install b/modules/book/book.install index cfc297555..377d219ad 100644 --- a/modules/book/book.install +++ b/modules/book/book.install @@ -14,5 +14,17 @@ function book_install() { KEY nid (nid), KEY parent (parent) ) /*!40100 DEFAULT CHARACTER SET UTF8 */ "); + break; + case 'pgsql': + db_query("CREATE TABLE {book} ( + vid uint NOT NULL default '0', + nid uint NOT NULL default '0', + parent int NOT NULL default '0', + weight smallint NOT NULL default '0', + PRIMARY KEY (vid) + )"); + db_query("CREATE INDEX {book}_nid_idx ON {book} (nid)"); + db_query("CREATE INDEX {book}_parent_idx ON {book} (parent)"); + break; } -}
\ No newline at end of file +} diff --git a/modules/contact/contact.install b/modules/contact/contact.install index 14e3c737d..608167631 100644 --- a/modules/contact/contact.install +++ b/modules/contact/contact.install @@ -15,5 +15,18 @@ function contact_install() { PRIMARY KEY (cid), UNIQUE KEY category (category) ) /*!40100 DEFAULT CHARACTER SET UTF8 */ "); + break; + case 'pgsql': + db_query("CREATE TABLE {contact} ( + cid serial CHECK (cid >= 0), + category varchar(255) NOT NULL default '', + recipients text NOT NULL default '', + reply text NOT NULL default '', + weight smallint NOT NULL default '0', + selected smallint NOT NULL default '0', + PRIMARY KEY (cid), + UNIQUE (category) + )"); + break; } -}
\ No newline at end of file +} diff --git a/modules/drupal/drupal.install b/modules/drupal/drupal.install index b1b418571..50012e145 100644 --- a/modules/drupal/drupal.install +++ b/modules/drupal/drupal.install @@ -26,5 +26,29 @@ function drupal_install() { type varchar(255) NOT NULL default '', PRIMARY KEY (cid,name) ) /*!40100 DEFAULT CHARACTER SET UTF8 */ "); + break; + case 'pgsql': + db_query("CREATE TABLE {client} ( + cid serial CHECK (cid >= 0), + link varchar(255) NOT NULL default '', + name varchar(128) NOT NULL default '', + mail varchar(128) NOT NULL default '', + slogan text NOT NULL, + mission text NOT NULL, + users int NOT NULL default '0', + nodes int NOT NULL default '0', + version varchar(35) NOT NULL default'', + created int NOT NULL default '0', + changed int NOT NULL default '0', + PRIMARY KEY (cid) + )"); + + db_query("CREATE TABLE {client_system} ( + cid int NOT NULL default '0', + name varchar(255) NOT NULL default '', + type varchar(255) NOT NULL default '', + PRIMARY KEY (cid,name) + )"); + break; } -}
\ No newline at end of file +} diff --git a/modules/forum/forum.install b/modules/forum/forum.install index 9d7d80c21..c11eee108 100644 --- a/modules/forum/forum.install +++ b/modules/forum/forum.install @@ -13,5 +13,16 @@ function forum_install() { KEY nid (nid), KEY tid (tid) ) /*!40100 DEFAULT CHARACTER SET UTF8 */ "); + break; + case 'pgsql': + db_query("CREATE TABLE {forum} ( + nid uint NOT NULL default '0', + vid uint NOT NULL default '0', + tid uint NOT NULL default '0', + PRIMARY KEY (vid) + )"); + db_query("CREATE INDEX {forum}_nid_idx ON {forum} (nid)"); + db_query("CREATE INDEX {forum}_tid_idx ON {forum} (tid)"); + break; } -}
\ No newline at end of file +} diff --git a/modules/locale/locale.install b/modules/locale/locale.install index 08bcbc5bc..99192be0d 100644 --- a/modules/locale/locale.install +++ b/modules/locale/locale.install @@ -33,6 +33,37 @@ function locale_install() { KEY plid (plid), KEY plural (plural) ) /*!40100 DEFAULT CHARACTER SET UTF8 */ "); + break; + case 'pgsql': + db_query("CREATE TABLE {locales_meta} ( + locale varchar(12) NOT NULL default '', + name varchar(64) NOT NULL default '', + enabled int NOT NULL default '0', + isdefault int NOT NULL default '0', + plurals int NOT NULL default '0', + formula varchar(128) NOT NULL default '', + PRIMARY KEY (locale) + )"); + + db_query("CREATE TABLE {locales_source} ( + lid serial, + location varchar(255) NOT NULL default '', + source bytea NOT NULL, + PRIMARY KEY (lid) + )"); + + db_query("CREATE TABLE {locales_target} ( + lid int NOT NULL default '0', + translation bytea NOT NULL, + locale varchar(12) NOT NULL default '', + plid int NOT NULL default '0', + plural int NOT NULL default '0' + )"); + db_query("CREATE INDEX {locales_target}_lid_idx ON {locales_target} (lid)"); + db_query("CREATE INDEX {locales_target}_locale_idx ON {locales_target} (locale)"); + db_query("CREATE INDEX {locales_target}_plid_idx ON {locales_target} (plid)"); + db_query("CREATE INDEX {locales_target}_plural_idx ON {locales_target} (plural)"); + break; } db_query("INSERT INTO {locales_meta} (locale, name, enabled, isdefault) VALUES ('en', 'English', '1', '1')"); } diff --git a/modules/poll/poll.install b/modules/poll/poll.install index 8c8feaef8..f05958cca 100644 --- a/modules/poll/poll.install +++ b/modules/poll/poll.install @@ -31,5 +31,33 @@ function poll_install() { PRIMARY KEY (chid), KEY nid (nid) ) /*!40100 DEFAULT CHARACTER SET UTF8 */ "); + case 'pgsql': + db_query("CREATE TABLE {poll} ( + nid uint NOT NULL default '0', + runtime int NOT NULL default '0', + active uint NOT NULL default '0', + PRIMARY KEY (nid) + )"); + + db_query("CREATE TABLE {poll_votes} ( + nid uint NOT NULL, + uid uint NOT NULL default 0, + chorder int NOT NULL default -1, + hostname varchar(128) NOT NULL default '' + )"); + db_query("CREATE INDEX {poll_votes}_nid_idx ON {poll_votes} (nid)"); + db_query("CREATE INDEX {poll_votes}_uid_idx ON {poll_votes} (uid)"); + db_query("CREATE INDEX {poll_votes}_hostname_idx ON {poll_votes} (hostname)"); + + db_query("CREATE TABLE {poll_choices} ( + chid serial CHECK (chid >= 0), + nid uint NOT NULL default '0', + chtext varchar(128) NOT NULL default '', + chvotes int NOT NULL default '0', + chorder int NOT NULL default '0', + PRIMARY KEY (chid) + )"); + db_query("CREATE INDEX {poll_choices}_nid_idx ON {poll_choices} (nid)"); + break; } } diff --git a/modules/profile/profile.install b/modules/profile/profile.install index 2aa4e46cb..555c0f109 100644 --- a/modules/profile/profile.install +++ b/modules/profile/profile.install @@ -31,5 +31,33 @@ function profile_install() { KEY uid (uid), KEY fid (fid) ) /*!40100 DEFAULT CHARACTER SET UTF8 */ "); + case 'pgsql': + db_query("CREATE TABLE {profile_fields} ( + fid serial, + title varchar(255) default NULL, + name varchar(128) default NULL, + explanation TEXT default NULL, + category varchar(255) default NULL, + page varchar(255) default NULL, + type varchar(128) default NULL, + weight smallint DEFAULT '0' NOT NULL, + required smallint DEFAULT '0' NOT NULL, + register smallint DEFAULT '0' NOT NULL, + visibility smallint DEFAULT '0' NOT NULL, + autocomplete smallint DEFAULT '0' NOT NULL, + options text, + UNIQUE (name), + PRIMARY KEY (fid) + )"); + db_query("CREATE INDEX {profile_fields}_category_idx ON {profile_fields} (category)"); + + db_query("CREATE TABLE {profile_values} ( + fid uint default '0', + uid uint default '0', + value text + )"); + db_query("CREATE INDEX {profile_values}_uid_idx ON {profile_values} (uid)"); + db_query("CREATE INDEX {profile_values}_fid_idx ON {profile_values} (fid)"); + break; } -}
\ No newline at end of file +} diff --git a/modules/search/search.install b/modules/search/search.install index d6ab2fb2b..eddde85d4 100644 --- a/modules/search/search.install +++ b/modules/search/search.install @@ -29,5 +29,32 @@ function search_install() { count float default NULL, PRIMARY KEY (word) ) /*!40100 DEFAULT CHARACTER SET UTF8 */ "); + break; + case 'pgsql': + db_query("CREATE TABLE {search_dataset} ( + sid uint NOT NULL default '0', + type varchar(16) default NULL, + data text NOT NULL + )"); + db_query("CREATE INDEX {search_dataset}_sid_type_idx ON {search_dataset} (sid, type)"); + + db_query("CREATE TABLE {search_index} ( + word varchar(50) NOT NULL default '', + sid uint NOT NULL default '0', + type varchar(16) default NULL, + fromsid uint NOT NULL default '0', + fromtype varchar(16) default NULL, + score float default NULL + )"); + db_query("CREATE INDEX {search_index}_sid_type_idx ON {search_index} (sid, type)"); + db_query("CREATE INDEX {search_index}_from_sid_type_idx ON {search_index} (fromsid, fromtype)"); + db_query("CREATE INDEX {search_index}_word_idx ON {search_index} (word)"); + + db_query("CREATE TABLE {search_total} ( + word varchar(50) NOT NULL default '', + count float default NULL, + PRIMARY KEY (word) + )"); + break; } -}
\ No newline at end of file +} diff --git a/modules/statistics/statistics.install b/modules/statistics/statistics.install index 2d4899300..2517d8819 100644 --- a/modules/statistics/statistics.install +++ b/modules/statistics/statistics.install @@ -18,5 +18,21 @@ function statistics_install() { KEY accesslog_timestamp (timestamp), PRIMARY KEY (aid) ) /*!40100 DEFAULT CHARACTER SET UTF8 */ "); + break; + case 'pgsql': + db_query("CREATE TABLE {accesslog} ( + aid serial, + sid varchar(32) NOT NULL default '', + title varchar(255) default NULL, + path varchar(255) default NULL, + url varchar(255) default NULL, + hostname varchar(128) default NULL, + uid uint default '0', + timer uint NOT NULL default '0', + timestamp uint NOT NULL default '0', + PRIMARY KEY (aid) + )"); + db_query("CREATE INDEX {accesslog}_accesslog_timestamp_idx ON {accesslog} (timestamp)"); + break; } -}
\ No newline at end of file +} diff --git a/modules/system/system.install b/modules/system/system.install index ba23868f1..7ff587f53 100644 --- a/modules/system/system.install +++ b/modules/system/system.install @@ -384,9 +384,393 @@ function system_install() { break; case 'pgsql': - break; + /* create unsigned types */ + db_query("CREATE DOMAIN uint integer CHECK (VALUE >= 0)"); + db_query("CREATE DOMAIN smalluint smallint CHECK (VALUE >= 0)"); + db_query("CREATE DOMAIN biguint bigint CHECK (VALUE >= 0)"); + + db_query("CREATE TABLE {access} ( + aid serial, + mask varchar(255) NOT NULL default '', + type varchar(255) NOT NULL default '', + status smallint NOT NULL default '0', + PRIMARY KEY (aid) + )"); + + db_query("CREATE TABLE {authmap} ( + aid serial CHECK (aid >= 0), + uid int NOT NULL default '0', + authname varchar(128) NOT NULL default '', + module varchar(128) NOT NULL default '', + PRIMARY KEY (aid), + UNIQUE (authname) + )"); + db_query("CREATE TABLE {blocks} ( + module varchar(64) DEFAULT '' NOT NULL, + delta varchar(32) NOT NULL default '0', + theme varchar(255) NOT NULL default '', + status smallint DEFAULT '0' NOT NULL, + weight smallint DEFAULT '0' NOT NULL, + region varchar(64) DEFAULT 'left' NOT NULL, + custom smallint DEFAULT '0' NOT NULL, + throttle smallint DEFAULT '0' NOT NULL, + visibility smallint DEFAULT '0' NOT NULL, + pages text DEFAULT '' NOT NULL + )"); + + db_query("CREATE TABLE {boxes} ( + bid serial, + title varchar(64) NOT NULL default '', + body text, + info varchar(128) NOT NULL default '', + format smallint NOT NULL default '0', + PRIMARY KEY (bid), + UNIQUE (info) + )"); + + db_query("CREATE TABLE {cache} ( + cid varchar(255) NOT NULL default '', + data bytea, + expire int NOT NULL default '0', + created int NOT NULL default '0', + headers text, + PRIMARY KEY (cid) + )"); + db_query("CREATE INDEX {cache}_expire_idx ON {cache} (expire)"); + + db_query("CREATE TABLE {comments} ( + cid serial, + pid int NOT NULL default '0', + nid int NOT NULL default '0', + uid int NOT NULL default '0', + subject varchar(64) NOT NULL default '', + comment text NOT NULL, + hostname varchar(128) NOT NULL default '', + timestamp int NOT NULL default '0', + score int NOT NULL default '0', + status smalluint NOT NULL default '0', + format smallint NOT NULL default '0', + thread varchar(255) NOT NULL, + users text, + name varchar(60) default NULL, + mail varchar(64) default NULL, + homepage varchar(255) default NULL, + PRIMARY KEY (cid) + )"); + db_query("CREATE INDEX {comments}_nid_idx ON {comments} (nid)"); + + db_query("CREATE TABLE {node_comment_statistics} ( + nid serial CHECK (nid >= 0), + last_comment_timestamp int NOT NULL default '0', + last_comment_name varchar(60) default NULL, + last_comment_uid int NOT NULL default '0', + comment_count uint NOT NULL default '0', + PRIMARY KEY (nid) + )"); + db_query("CREATE INDEX {node_comment_statistics}_node_comment_timestamp_idx ON {node_comment_statistics} (last_comment_timestamp)"); + + db_query("CREATE TABLE {files} ( + fid uint NOT NULL default 0, + nid uint NOT NULL default 0, + filename varchar(255) NOT NULL default '', + filepath varchar(255) NOT NULL default '', + filemime varchar(255) NOT NULL default '', + filesize uint NOT NULL default 0, + PRIMARY KEY (fid) + )"); + + db_query("CREATE TABLE {file_revisions} ( + fid uint NOT NULL default 0, + vid uint NOT NULL default 0, + description varchar(255) NOT NULL default '', + list smalluint NOT NULL default 0, + PRIMARY KEY (fid, vid) + )"); + + db_query("CREATE TABLE {filter_formats} ( + format serial, + name varchar(255) NOT NULL default '', + roles varchar(255) NOT NULL default '', + cache smallint NOT NULL default '0', + PRIMARY KEY (format), + UNIQUE (name) + )"); + + db_query("CREATE TABLE {filters} ( + format int NOT NULL default '0', + module varchar(64) NOT NULL default '', + delta smallint DEFAULT '0' NOT NULL, + weight smallint DEFAULT '0' NOT NULL + )"); + db_query("CREATE INDEX {filters}_weight_idx ON {filters} (weight)"); + + db_query("CREATE TABLE {flood} ( + event varchar(64) NOT NULL default '', + hostname varchar(128) NOT NULL default '', + timestamp int NOT NULL default '0' + )"); + + db_query("CREATE TABLE {history} ( + uid int NOT NULL default '0', + nid int NOT NULL default '0', + timestamp int NOT NULL default '0', + PRIMARY KEY (uid,nid) + )"); + + db_query("CREATE TABLE {menu} ( + mid serial CHECK (mid >= 0), + pid uint NOT NULL default '0', + path varchar(255) NOT NULL default '', + title varchar(255) NOT NULL default '', + description varchar(255) NOT NULL default '', + weight smallint NOT NULL default '0', + type uint NOT NULL default '0', + PRIMARY KEY (mid) + )"); + db_query("ALTER SEQUENCE {menu}_mid_seq MINVALUE 2 RESTART 2"); + + db_query("CREATE TABLE {node} ( + nid serial CHECK (nid >= 0), + vid uint NOT NULL default '0', + type varchar(32) NOT NULL default '', + title varchar(128) NOT NULL default '', + uid int NOT NULL default '0', + status int NOT NULL default '1', + created int NOT NULL default '0', + changed int NOT NULL default '0', + comment int NOT NULL default '0', + promote int NOT NULL default '0', + moderate int NOT NULL default '0', + sticky int NOT NULL default '0', + PRIMARY KEY (nid, vid), + UNIQUE (vid) + )"); + db_query("CREATE INDEX {node}_node_type_idx ON {node} (substr (type, 1, 4))"); + db_query("CREATE INDEX {node}_node_title_type_idx ON {node} (title, substr(type, 1, 4))"); + db_query("CREATE INDEX {node}_status_idx ON {node} (status)"); + db_query("CREATE INDEX {node}_uid_idx ON {node} (uid)"); + db_query("CREATE INDEX {node}_node_moderate_idx ON {node} (moderate)"); + db_query("CREATE INDEX {node}_node_promote_status_idx ON {node} (promote, status)"); + db_query("CREATE INDEX {node}_node_created_idx ON {node} (created)"); + db_query("CREATE INDEX {node}_node_changed_idx ON {node} (changed)"); + db_query("CREATE INDEX {node}_node_status_type_idx ON {node} (status, type, nid)"); + db_query("CREATE INDEX {node}_nid_idx ON {node} (nid)"); + + db_query("CREATE TABLE {node_access} ( + nid uint NOT NULL default '0', + gid uint NOT NULL default '0', + realm varchar(255) NOT NULL default '', + grant_view smalluint NOT NULL default '0', + grant_update smalluint NOT NULL default '0', + grant_delete smalluint NOT NULL default '0', + PRIMARY KEY (nid,gid,realm) + )"); + + db_query("CREATE TABLE {node_revisions} ( + nid uint NOT NULL, + vid uint NOT NULL, + uid int NOT NULL default '0', + title varchar(128) NOT NULL default '', + body text NOT NULL default '', + teaser text NOT NULL default '', + log text NOT NULL default '', + timestamp int NOT NULL default '0', + format int NOT NULL default '0', + PRIMARY KEY (vid) + )"); + db_query("CREATE INDEX {node_revisions}_nid_idx ON {node_revisions} (nid)"); + db_query("CREATE INDEX {node_revisions}_uid_idx ON {node_revisions} (uid)"); + db_query("CREATE SEQUENCE {node_revisions}_vid_seq INCREMENT 1 START 1"); + + db_query("CREATE TABLE {url_alias} ( + pid serial CHECK (pid >= 0), + src varchar(128) NOT NULL default '', + dst varchar(128) NOT NULL default '', + PRIMARY KEY (pid), + UNIQUE (dst) + )"); + db_query("CREATE INDEX {url_alias}_src_idx ON {url_alias} (src)"); + + db_query("CREATE TABLE {permission} ( + rid uint NOT NULL default '0', + perm text, + tid uint NOT NULL default '0' + )"); + db_query("CREATE INDEX {permission}_rid_idx ON {permission} (rid)"); + + db_query("CREATE TABLE {role} ( + rid serial CHECK (rid >= 0), + name varchar(32) NOT NULL default '', + PRIMARY KEY (rid), + UNIQUE (name) + )"); + + db_query("CREATE TABLE {blocks_roles} ( + module varchar(64) NOT NULL, + delta varchar(32) NOT NULL, + rid uint NOT NULL, + PRIMARY KEY (module, delta, rid) + )"); + + db_query("CREATE TABLE {sessions} ( + uid uint NOT NULL, + sid varchar(32) NOT NULL default '', + hostname varchar(128) NOT NULL default '', + timestamp int NOT NULL default '0', + cache int NOT NULL default '0', + session text, + PRIMARY KEY (sid) + )"); + db_query("CREATE INDEX {sessions}_uid_idx ON {sessions} (uid)"); + db_query("CREATE INDEX {sessions}_timestamp_idx ON {sessions} (timestamp)"); + +/* Only used for MySQL + db_query("CREATE TABLE {sequences} ( + name varchar(255) NOT NULL default '', + id uint NOT NULL default '0', + PRIMARY KEY (name) + )"); */ + + db_query("CREATE TABLE {node_counter} ( + nid int NOT NULL default '0', + totalcount biguint NOT NULL default '0', + daycount uint NOT NULL default '0', + timestamp uint NOT NULL default '0', + PRIMARY KEY (nid) + )"); + db_query("CREATE INDEX {node_counter}_totalcount_idx ON {node_counter} (totalcount)"); + db_query("CREATE INDEX {node_counter}_daycount_idx ON {node_counter} (daycount)"); + db_query("CREATE INDEX {node_counter}_timestamp_idx ON {node_counter} (timestamp)"); + + db_query("CREATE TABLE {system} ( + filename varchar(255) NOT NULL default '', + name varchar(255) NOT NULL default '', + type varchar(255) NOT NULL default '', + description varchar(255) NOT NULL default '', + status int NOT NULL default '0', + throttle smallint DEFAULT '0' NOT NULL, + bootstrap int NOT NULL default '0', + schema_version smallint NOT NULL default -1, + weight int NOT NULL default '0', + PRIMARY KEY (filename) + )"); + db_query("CREATE INDEX {system}_weight_idx ON {system} (weight)"); + + db_query("CREATE TABLE {term_data} ( + tid serial CHECK (tid >= 0), + vid uint NOT NULL default '0', + name varchar(255) NOT NULL default '', + description text, + weight smallint NOT NULL default '0', + PRIMARY KEY (tid) + )"); + db_query("CREATE INDEX {term_data}_vid_idx ON {term_data} (vid)"); + + db_query("CREATE TABLE {term_hierarchy} ( + tid uint NOT NULL default '0', + parent uint NOT NULL default '0', + PRIMARY KEY (tid, parent) + )"); + db_query("CREATE INDEX {term_hierarchy}_tid_idx ON {term_hierarchy} (tid)"); + db_query("CREATE INDEX {term_hierarchy}_parent_idx ON {term_hierarchy} (parent)"); + + db_query("CREATE TABLE {term_node} ( + nid uint NOT NULL default '0', + tid uint NOT NULL default '0', + PRIMARY KEY (tid,nid) + )"); + db_query("CREATE INDEX {term_node}_nid_idx ON {term_node} (nid)"); + db_query("CREATE INDEX {term_node}_tid_idx ON {term_node} (tid)"); + + db_query("CREATE TABLE {term_relation} ( + tid1 uint NOT NULL default '0', + tid2 uint NOT NULL default '0' + )"); + db_query("CREATE INDEX {term_relation}_tid1_idx ON {term_relation} (tid1)"); + db_query("CREATE INDEX {term_relation}_tid2_idx ON {term_relation} (tid2)"); + + db_query("CREATE TABLE {term_synonym} ( + tid uint NOT NULL default '0', + name varchar(255) NOT NULL default '' + )"); + db_query("CREATE INDEX {term_synonym}_tid_idx ON {term_synonym} (tid)"); + db_query("CREATE INDEX {term_synonym}_name_idx ON {term_synonym} (substr(name, 1, 3))"); + + db_query("CREATE TABLE {users} ( + uid uint NOT NULL default '0', + name varchar(60) NOT NULL default '', + pass varchar(32) NOT NULL default '', + mail varchar(64) default '', + mode smallint NOT NULL default '0', + sort smallint default '0', + threshold smallint default '0', + theme varchar(255) NOT NULL default '', + signature varchar(255) NOT NULL default '', + created int NOT NULL default '0', + access int NOT NULL default '0', + login int NOT NULL default '0', + status smallint NOT NULL default '0', + timezone varchar(8) default NULL, + language varchar(12) NOT NULL default '', + picture varchar(255) NOT NULL DEFAULT '', + init varchar(64) default '', + data text, + PRIMARY KEY (uid), + UNIQUE (name) + )"); + db_query("CREATE INDEX {users}_access_idx ON {users} (access)"); + db_query("CREATE SEQUENCE {users}_uid_seq INCREMENT 1 START 1"); + + db_query("CREATE TABLE {users_roles} ( + uid uint NOT NULL default '0', + rid uint NOT NULL default '0', + PRIMARY KEY (uid, rid) + )"); + + db_query("CREATE TABLE {variable} ( + name varchar(48) NOT NULL default '', + value text NOT NULL, + PRIMARY KEY (name) + )"); + + db_query("CREATE TABLE {vocabulary} ( + vid serial CHECK (vid >= 0), + name varchar(255) NOT NULL default '', + description text, + help varchar(255) NOT NULL default '', + relations smalluint NOT NULL default '0', + hierarchy smalluint NOT NULL default '0', + multiple smalluint NOT NULL default '0', + required smalluint NOT NULL default '0', + tags smalluint NOT NULL default '0', + module varchar(255) NOT NULL default '', + weight smallint NOT NULL default '0', + PRIMARY KEY (vid) + )"); + + db_query("CREATE TABLE {vocabulary_node_types} ( + vid uint NOT NULL DEFAULT '0', + type varchar(32) NOT NULL DEFAULT '', + PRIMARY KEY (vid, type) + )"); + + db_query("CREATE TABLE {watchdog} ( + wid serial, + uid int NOT NULL default '0', + type varchar(16) NOT NULL default '', + message text NOT NULL, + severity smalluint NOT NULL default '0', + link varchar(255) NOT NULL default '', + location varchar(128) NOT NULL default '', + referer varchar(128) NOT NULL default '', + hostname varchar(128) NOT NULL default '', + timestamp int NOT NULL default '0', + PRIMARY KEY (wid) + )"); + break; } + db_query("INSERT INTO {system} (filename, name, type, description, status, throttle, bootstrap, schema_version) VALUES ('themes/engines/phptemplate/phptemplate.engine', 'phptemplate', 'theme_engine', '', 1, 0, 0, 0)"); db_query("INSERT INTO {system} (filename, name, type, description, status, throttle, bootstrap, schema_version) VALUES ('themes/bluemarine/page.tpl.php', 'bluemarine', 'theme', 'themes/engines/phptemplate/phptemplate.engine', 1, 0, 0, 0)"); |