简单BBS数据库设计.doc
《简单BBS数据库设计.doc》由会员分享,可在线阅读,更多相关《简单BBS数据库设计.doc(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 KMUST JAVA论坛数据库文档KMUST JAVA BBSDBMS: ORACLE Version 10g作者:KMUST JAVA论坛开发小组成员版本:0.1时间:2011/7/19说明:KMUST JAVA论坛数据库设计文档I 数据库表关系图II 数据库表清单名称说明T_ADMIN管理员表T_ARTICLE帖子表T_AVATAR头像表T_CATEGORY论坛分类表T_FEEDBACK用户意见反馈表T_FORUM论坛版块表T_NOTICE公告表T_RESPONSE反馈应答表T_SCORE用户积分明细表T_USER用户表II.1 表格T_ADMINII.1.1 表格T_ADMIN的列清单
2、名称注释数据类型长度主要的外来键ID管理员编号NUMBER(2)2TRUEFALSENAME管理员用户名VARCHAR2(30)30FALSEFALSEPASSWORD管理员密码VARCHAR2(30)30FALSEFALSEREGTIME管理员注册时间DATEFALSEFALSEAVATARID管理员头像编号NUMBER(3)3FALSETRUEII.1.1.1 表格T_ADMIN的触发器清单名称注释TRI_DELETE_ADMIN_INFO在删除管理员之前,修改该管理员发布的公告和应答记录,将这些记录中的管理员编号改为系统默认管理员编号TRI_DELETE_ADMIN_INFO的文本:CR
3、EATE OR REPLACE TRIGGER TRI_DELETE_ADMIN_INFO before delete on t_admin for each rowbegin update t_notice set adminid=1 where adminid=:OLD.id; update t_response set adminid=1 where adminid=:OLD.id;end;/ALTER TRIGGER TRI_DELETE_ADMIN_INFO ENABLE;II.2 表格T_ARTICLEII.2.1 表格T_ARTICLE的列清单名称注释数据类型长度主要的外来键ID
4、帖子编号NUMBER(10)10TRUEFALSEPID父帖编号,0表示该帖子为主题帖NUMBER(10)10FALSEFALSEROOTID主题帖编号,主题帖的该字段值与其自身编号相同NUMBER(10)10FALSEFALSETITLE帖子标题VARCHAR2(255)255FALSEFALSECONTENT帖子内容CLOBFALSEFALSEPDATE发表时间DATEFALSEFALSEISLEAF是否为叶子结点(即没有被回复的帖子),0表示没有被回复,1表示被回复过NUMBER(1)1FALSEFALSEUSERID发帖用户编号NUMBER(5)5FALSETRUEFORUMID帖子所
5、属版块NUMBER(3)3FALSETRUEII.2.1.1 表格T_ARTICLE的触发器清单名称注释TRI_ADD_DEFAULT_SCORE用户每发一个帖子,不论是主题帖还是回复帖,均为该用户加2分的积分,此时用户积分明细表中的该帖子积分记录的评价用户编号与发帖用户编号相同TRI_ADD_DEFAULT_SCORE的文本:CREATE OR REPLACE TRIGGER TRI_ADD_DEFAULT_SCORE after insert on t_article for each rowbegin insert into t_score values (:NEW.id, :NEW.u
6、serid, :NEW.userid, 2);end;/ALTER TRIGGER TRI_ADD_DEFAULT_SCORE ENABLE;TRI_DELETE_ARTICLE_SCORE删除帖子之前,同时从用户积分明细表中删除有关该帖子的积分记录TRI_DELETE_ARTICLE_SCORE的文本:CREATE OR REPLACE TRIGGER TRI_DELETE_ARTICLE_SCORE before delete on t_article for each rowbegin delete from t_score where articleid = :OLD.id;end;/
7、ALTER TRIGGER TRI_DELETE_ARTICLE_SCORE ENABLE;TRI_UPDATE_ISLEAF_ROOTID发帖之前,如果该帖是主题贴,则将其rootid置为该帖子的id,如果是回复帖,由将被回复的帖子的isleaf字段置为1,表示非叶子结果(被回复过的帖子)TRI_UPDATE_ISLEAF_ROOTID的文本:CREATE OR REPLACE TRIGGER TRI_UPDATE_ISLEAF_ROOTID before insert on t_article for each rowdeclare tid t_article.id%type;begin
8、if(:NEW.pid = 0) then tid := :NEW.id; :NEW.rootid := tid; else update t_article set isleaf = 1 where id = :NEW.pid; end if;end;/ALTER TRIGGER TRI_UPDATE_ISLEAF_ROOTID ENABLE;II.3 表格T_AVATARII.3.1 表格T_AVATAR的列清单名称注释数据类型长度主要的外来键ID头像编号NUMBER(3)3TRUEFALSEIMAGE头像图片BLOBFALSEFALSEII.4 表格T_CATEGORYII.4.1 表格
9、T_CATEGORY的列清单名称注释数据类型长度主要的外来键ID分类编号NUMBER(3)3TRUEFALSETITLE分类标题VARCHAR2(50)50FALSEFALSEII.5 表格T_FEEDBACKII.5.1 表格T_FEEDBACK的列清单名称注释数据类型长度主要的外来键ID意见编号NUMBER(5)5TRUEFALSEUSERID发表意见的用户编号NUMBER(5)5FALSETRUEPDATE意见发表时间DATEFALSEFALSETITLE意见标题VARCHAR2(50)50FALSEFALSECONTENT意见内容VARCHAR2(2000)2000FALSEFALSE
10、ISSOLVED是否已回复,初始值为0,表示未回复,1表示已回复NUMBER(1)1FALSEFALSEII.5.1.1 表格T_FEEDBACK的触发器清单名称注释TRI_DELETE_RESPONSE在删除用户意见之前,先将反馈应答表中回复该意见的记录删除,以避免外键约束影响TRI_DELETE_RESPONSE的文本:CREATE OR REPLACE TRIGGER TRI_DELETE_RESPONSE before delete on t_feedback for each rowbegin delete from t_response where feedbackid = :OL
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 简单 BBS 数据库 设计
限制150内