近期想做一个博客,数据库应该怎么建??几张表??哪些字段??

解决方案 »

  1.   

    DROP TABLE IF EXISTS attachment;
    CREATE TABLE `attachment` (
      `aid` smallint(5) unsigned NOT NULL auto_increment,
      `blogid` mediumint(8) unsigned NOT NULL default '0',
      `filename` varchar(255) NOT NULL default '',
      `filesize` int(10) NOT NULL default '0',
      `filepath` varchar(255) NOT NULL default '',
      `addtime` bigint(20) NOT NULL,
      PRIMARY KEY  (`aid`),
      KEY `blogid` (`blogid`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
    DROP TABLE IF EXISTS blog;
    CREATE TABLE `blog` (
      `gid` mediumint(8) unsigned NOT NULL auto_increment,
      `title` varchar(255) NOT NULL default '',
      `date` bigint(20) NOT NULL,
      `content` longtext NOT NULL,
      `excerpt` longtext NOT NULL,
      `author` int(10) NOT NULL default '1',
      `sortid` tinyint(3) NOT NULL default '-1',
      `type` varchar(20) NOT NULL default 'blog',
      `views` mediumint(8) unsigned NOT NULL default '0',
      `comnum` mediumint(8) unsigned NOT NULL default '0',
      `tbcount` mediumint(8) unsigned NOT NULL default '0',
      `attnum` mediumint(8) unsigned NOT NULL default '0',
      `top` enum('n','y') NOT NULL default 'n',
      `hide` enum('n','y') NOT NULL default 'n',
      `allow_re` enum('n','y') NOT NULL default 'y',
      `allow_tb` enum('n','y') NOT NULL default 'y',
      `password` varchar(255) NOT NULL default '',
      `alias` varchar(200) NOT NULL default '',
      PRIMARY KEY  (`gid`),
      KEY `date` (`date`),
      KEY `author` (`author`),
      KEY `sortid` (`sortid`),
      KEY `type` (`type`),
      KEY `hide` (`hide`)
    ) ENGINE=MyISAM AUTO_INCREMENT=59 DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS comment;
    CREATE TABLE `comment` (
      `cid` mediumint(8) unsigned NOT NULL auto_increment,
      `gid` mediumint(8) unsigned NOT NULL default '0',
      `date` bigint(20) NOT NULL,
      `poster` varchar(20) NOT NULL default '',
      `comment` text NOT NULL,
      `mail` varchar(60) NOT NULL default '',
      `url` varchar(75) NOT NULL default '',
      `ip` varchar(128) NOT NULL default '',
      `hide` enum('n','y') NOT NULL default 'n',
      `pid` mediumint(8) unsigned NOT NULL default '0',
      PRIMARY KEY  (`cid`),
      KEY `gid` (`gid`),
      KEY `hide` (`hide`)
    ) ENGINE=MyISAM AUTO_INCREMENT=28 DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS options;
    CREATE TABLE `options` (
      `option_id` int(11) unsigned NOT NULL auto_increment,
      `option_name` varchar(255) NOT NULL,
      `option_value` longtext NOT NULL,
      PRIMARY KEY  (`option_id`),
      KEY `option_name` (`option_name`)
    ) ENGINE=MyISAM AUTO_INCREMENT=48 DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS reply;
    CREATE TABLE `reply` (
      `id` mediumint(8) unsigned NOT NULL auto_increment,
      `tid` mediumint(8) unsigned NOT NULL default '0',
      `date` bigint(20) NOT NULL,
      `name` varchar(20) NOT NULL default '',
      `content` text NOT NULL,
      `hide` enum('n','y') NOT NULL default 'n',
      `ip` varchar(128) NOT NULL default '',
      PRIMARY KEY  (`id`),
      KEY `gid` (`tid`),
      KEY `hide` (`hide`)
    ) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS sort;
    CREATE TABLE `sort` (
      `sid` tinyint(3) unsigned NOT NULL auto_increment,
      `sortname` varchar(255) NOT NULL default '',
      `taxis` tinyint(3) NOT NULL default '0',
      `alias` varchar(200) NOT NULL default '',
      PRIMARY KEY  (`sid`)
    ) ENGINE=MyISAM AUTO_INCREMENT=11 DEFAULT CHARSET=utf8;
    DROP TABLE IF EXISTS link;
    CREATE TABLE `link` (
      `id` smallint(4) unsigned NOT NULL auto_increment,
      `sitename` varchar(30) NOT NULL default '',
      `siteurl` varchar(75) NOT NULL default '',
      `description` varchar(255) NOT NULL default '',
      `taxis` smallint(4) unsigned NOT NULL default '0',
      PRIMARY KEY  (`id`)
    ) ENGINE=MyISAM AUTO_INCREMENT=8 DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS tag;
    CREATE TABLE `tag` (
      `tid` mediumint(8) unsigned NOT NULL auto_increment,
      `tagname` varchar(60) NOT NULL default '',
      `gid` text NOT NULL,
      PRIMARY KEY  (`tid`),
      KEY `tagname` (`tagname`)
    ) ENGINE=MyISAM AUTO_INCREMENT=74 DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS trackback;
    CREATE TABLE `trackback` (
      `tbid` mediumint(8) unsigned NOT NULL auto_increment,
      `gid` mediumint(8) unsigned NOT NULL default '0',
      `title` varchar(255) NOT NULL default '',
      `date` bigint(20) NOT NULL,
      `excerpt` text NOT NULL,
      `url` varchar(255) NOT NULL default '',
      `blog_name` varchar(255) NOT NULL default '',
      `ip` varchar(16) NOT NULL default '',
      PRIMARY KEY  (`tbid`),
      KEY `gid` (`gid`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
    DROP TABLE IF EXISTS twitter;
    CREATE TABLE `twitter` (
      `id` int(11) NOT NULL auto_increment,
      `content` text NOT NULL,
      `author` int(10) NOT NULL default '1',
      `date` bigint(20) NOT NULL,
      `replynum` mediumint(8) unsigned NOT NULL default '0',
      PRIMARY KEY  (`id`),
      KEY `author` (`author`)
    ) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS user;
    CREATE TABLE `user` (
      `uid` tinyint(3) unsigned NOT NULL auto_increment,
      `username` varchar(32) NOT NULL default '',
      `password` varchar(64) NOT NULL default '',
      `nickname` varchar(20) NOT NULL default '',
      `role` varchar(60) NOT NULL default '',
      `photo` varchar(255) NOT NULL default '',
      `email` varchar(60) NOT NULL default '',
      `description` varchar(255) NOT NULL default '',
      PRIMARY KEY  (`uid`),
      KEY `username` (`username`)
    ) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;