Skip to content
Snippets Groups Projects
system.install 109 KiB
Newer Older
Dries Buytaert's avatar
Dries Buytaert committed
<?php

function system_install() {
  switch ($GLOBALS['db_type']) {
    case 'mysql':
    case 'mysqli':
      db_query("CREATE TABLE {access} (
        aid tinyint(10) NOT NULL auto_increment,
        mask varchar(255) NOT NULL default '',
        type varchar(255) NOT NULL default '',
        status tinyint(2) NOT NULL default '0',
        PRIMARY KEY (aid)
      ) /*!40100 DEFAULT CHARACTER SET UTF8 */ ");

      db_query("CREATE TABLE {authmap} (
        aid int(10) unsigned NOT NULL auto_increment,
        uid int(10) NOT NULL default '0',
        authname varchar(128) NOT NULL default '',
        module varchar(128) NOT NULL default '',
        PRIMARY KEY (aid),
        UNIQUE KEY authname (authname)
      ) /*!40100 DEFAULT CHARACTER SET UTF8 */ ");

      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 tinyint(2) DEFAULT '0' NOT NULL,
        weight tinyint(1) DEFAULT '0' NOT NULL,
        region varchar(64) DEFAULT 'left' NOT NULL,
        custom tinyint(2) DEFAULT '0' NOT NULL,
        throttle tinyint(1) DEFAULT '0' NOT NULL,
        visibility tinyint(1) DEFAULT '0' NOT NULL,
        pages text DEFAULT '' NOT NULL
      ) /*!40100 DEFAULT CHARACTER SET UTF8 */ ");

      db_query("CREATE TABLE {boxes} (
        bid tinyint(4) NOT NULL auto_increment,
        title varchar(64) NOT NULL default '',
        body longtext,
        info varchar(128) NOT NULL default '',
        format int(4) NOT NULL default '0',
        PRIMARY KEY (bid),
        UNIQUE KEY info (info)
      ) /*!40100 DEFAULT CHARACTER SET UTF8 */ ");

      db_query("CREATE TABLE {cache} (
        cid varchar(255) NOT NULL default '',
        data longblob,
        expire int(11) NOT NULL default '0',
        created int(11) NOT NULL default '0',
        headers text,
        PRIMARY KEY (cid),
        INDEX expire (expire)
      ) /*!40100 DEFAULT CHARACTER SET UTF8 */ ");

      db_query("CREATE TABLE {comments} (
        cid int(10) NOT NULL auto_increment,
        pid int(10) NOT NULL default '0',
        nid int(10) NOT NULL default '0',
        uid int(10) NOT NULL default '0',
        subject varchar(64) NOT NULL default '',
        comment longtext NOT NULL,
        hostname varchar(128) NOT NULL default '',
        timestamp int(11) NOT NULL default '0',
        score mediumint(9) NOT NULL default '0',
        status tinyint(3) unsigned NOT NULL default '0',
        format int(4) NOT NULL default '0',
        thread varchar(255) NOT NULL,
        users longtext,
        name varchar(60) default NULL,
        mail varchar(64) default NULL,
        homepage varchar(255) default NULL,
        PRIMARY KEY (cid),
        KEY lid (nid)
      ) /*!40100 DEFAULT CHARACTER SET UTF8 */ ");

      db_query("CREATE TABLE {node_comment_statistics} (
        nid int(10) unsigned NOT NULL auto_increment,
        last_comment_timestamp int(11) NOT NULL default '0',
        last_comment_name varchar(60) default NULL,
        last_comment_uid int(10) NOT NULL default '0',
        comment_count int(10) unsigned NOT NULL default '0',
        PRIMARY KEY (nid),
        KEY node_comment_timestamp (last_comment_timestamp)
      ) /*!40100 DEFAULT CHARACTER SET UTF8 */ ");

      db_query("CREATE TABLE {files} (
        fid int(10) unsigned NOT NULL default 0,
        nid int(10) unsigned NOT NULL default 0,
        filename varchar(255) NOT NULL default '',
        filepath varchar(255) NOT NULL default '',
        filemime varchar(255) NOT NULL default '',
        filesize int(10) unsigned NOT NULL default 0,
        PRIMARY KEY (fid)
      ) /*!40100 DEFAULT CHARACTER SET UTF8 */ ");

      db_query("CREATE TABLE {file_revisions} (
        fid int(10) unsigned NOT NULL default 0,
        vid int(10) unsigned NOT NULL default 0,
        description varchar(255) NOT NULL default '',
        list tinyint(1) unsigned NOT NULL default 0,
        PRIMARY KEY (fid, vid)
      ) /*!40100 DEFAULT CHARACTER SET UTF8 */ ");

      db_query("CREATE TABLE {filter_formats} (
        format int(4) NOT NULL auto_increment,
        name varchar(255) NOT NULL default '',
        roles varchar(255) NOT NULL default '',
        cache tinyint(2) NOT NULL default '0',
        PRIMARY KEY (format),
        UNIQUE KEY (name)
      ) /*!40100 DEFAULT CHARACTER SET UTF8 */ ");

      db_query("CREATE TABLE {filters} (
        format int(4) NOT NULL default '0',
        module varchar(64) NOT NULL default '',
        delta tinyint(2) DEFAULT '0' NOT NULL,
        weight tinyint(2) DEFAULT '0' NOT NULL,
        INDEX (weight)
      ) /*!40100 DEFAULT CHARACTER SET UTF8 */ ");

      db_query("CREATE TABLE {flood} (
        event varchar(64) NOT NULL default '',
        hostname varchar(128) NOT NULL default '',
        timestamp int(11) NOT NULL default '0'
      ) /*!40100 DEFAULT CHARACTER SET UTF8 */ ");

      db_query("CREATE TABLE {history} (
        uid int(10) NOT NULL default '0',
        nid int(10) NOT NULL default '0',
        timestamp int(11) NOT NULL default '0',
        PRIMARY KEY (uid,nid)
      ) /*!40100 DEFAULT CHARACTER SET UTF8 */ ");

      db_query("CREATE TABLE {menu} (
        mid int(10) unsigned NOT NULL default '0',
        pid int(10) unsigned NOT NULL default '0',
        path varchar(255) NOT NULL default '',
        title varchar(255) NOT NULL default '',
        description varchar(255) NOT NULL default '',
        weight tinyint(4) NOT NULL default '0',
        type int(2) unsigned NOT NULL default '0',
        PRIMARY KEY (mid)
      ) /*!40100 DEFAULT CHARACTER SET UTF8 */ ");


      db_query("CREATE TABLE {node} (
        nid int(10) unsigned NOT NULL auto_increment,
        vid int(10) unsigned NOT NULL default '0',
        type varchar(32) NOT NULL default '',
        title varchar(128) NOT NULL default '',
        uid int(10) NOT NULL default '0',
        status int(4) NOT NULL default '1',
        created int(11) NOT NULL default '0',
        changed int(11) NOT NULL default '0',
        comment int(2) NOT NULL default '0',
        promote int(2) NOT NULL default '0',
        moderate int(2) NOT NULL default '0',
        sticky int(2) NOT NULL default '0',
        PRIMARY KEY  (nid, vid),
        UNIQUE KEY vid (vid),
        KEY node_type (type(4)),
        KEY node_title_type (title, type(4)),
        KEY status (status),
        KEY uid (uid),
        KEY node_moderate (moderate),
        KEY node_promote_status (promote, status),
        KEY node_created (created),
        KEY node_changed (changed),
        KEY node_status_type (status, type, nid),
        KEY nid (nid)
      ) /*!40100 DEFAULT CHARACTER SET UTF8 */ ");

      db_query("CREATE TABLE {node_access} (
        nid int(10) unsigned NOT NULL default '0',
        gid int(10) unsigned NOT NULL default '0',
        realm varchar(255) NOT NULL default '',
        grant_view tinyint(1) unsigned NOT NULL default '0',
        grant_update tinyint(1) unsigned NOT NULL default '0',
        grant_delete tinyint(1) unsigned NOT NULL default '0',
        PRIMARY KEY (nid,gid,realm)
      ) /*!40100 DEFAULT CHARACTER SET UTF8 */ ");

      db_query("CREATE TABLE {node_revisions} (
        nid int(10) unsigned NOT NULL,
        vid int(10) unsigned NOT NULL,
        uid int(10) NOT NULL default '0',
        title varchar(128) NOT NULL default '',
        body longtext NOT NULL default '',
        teaser longtext NOT NULL default '',
        log longtext NOT NULL default '',
        timestamp int(11) NOT NULL default '0',
        format int(4) NOT NULL default '0',
        PRIMARY KEY  (vid),
        KEY nid (nid),
        KEY uid (uid)
      ) /*!40100 DEFAULT CHARACTER SET UTF8 */ ");

Loading
Loading full blame...