1、完整word版个人博客需求分析含流程图ER图存储过程个人博客需求分析含有Oracle数据库主要存储过程语句一 需求分析该系统为个人博客,具有一般博客系统的功能。 博主,即管理员,拥有最高权限,能对文章,分类,评论,用户等进行管理。游客只能浏览前台页面,及浏览文章。只有游客注册成为注册用户后,才能对文章进行评论。根据以上需求分析,该系统要实现的主要功能为: 前台显示文章部分 显示最新的前几篇文章 显示所有文章分类 按分类显示其下的所有文章 文章详细信息浏览阅读 游客注册以及注册用户的登录 评论文章功能 后台管理部分 登录验证,只有博主能登录 添加、编辑、删除文章功能 用户、类别、评论的管理功能二
2、、数据库设计2.1、E-R图2.2、表结构设计用户信息表 userinfo列名数据类型useridIntusernameVarchar2(50)userpasswordVarchar2(50)usertypeInt文章信息表 Articles列名数据类型A_idNumberA_titleVarchar2(50)A_contentVarchar2(4000)A_publishedtimeDateT_nameVarchar2(50)a_commentnum评论数量numberA_viewnum阅读数量number文章分类表 Tags列名数据类型T_idnumberT_nameVarchar2(50
3、)评论信息表 Comments列名数据类型C_idnumberA_idnumberC_usernameVarchat2(50)C_commentVarchar2(50)C_leavetimedate三博客系统的性能需求该系统在性能功能上应达到如下需求: 操作简单、界面友好: 完全控件式的页面布局,使得文章的录入工作更简便,许多选项只需要点击鼠标就可以完成;另外,跟踪出现的提示信息也让用户随时清楚自己的操作情况。对常见网站的博客管理的各个方面:上传博客、浏览、删除、修改等方面都大体实现,实现了网站对即时文章的管理要求; 即时可见:对文章的处理(包括添加、编辑、删除)将立即在主页的对应栏目显示出来
4、,达到“即时发布、即时见效”的功能; 系统运行应该快速、稳定、高效和可靠; 在结构上应具有很好的可扩展性,便于将来的功能扩展和维护。四 系统结构实现过程整个系统的工作流程为:打开该系统网站,游客能浏览、阅读文章,能进行注册,注册后成为注册用户,注册用户登录后能够对文章进行评论。博主从后台入口登录,可以添加文章,包括文章标题、类别、内容;还能对用户、文章、类别、评论进行管理。数据库中主要Oracle操作语句-ADDARTICLEcreate or replace procedure addarticle(title in articles.a_title%type,content in arti
5、cles.a_content%type,tagname in articles.t_name%type,commentnum in articles.a_commentnum%type default 0,viewnum in articles.a_viewnum%type default 0)asbegininsert into articles ( a_title, a_content, t_name, a_publishedtime, a_commentnum, a_viewnum)values(title, content, tagname, sysdate, commentnum,
6、viewnum);end addarticle;-ADDCOMMENTcreate or replace procedure addcomment(aid in comments.a_id%type,c_content in comments.c_comment%type,cname in comments.c_username%type)as begininsert into comments (a_id, c_comment, c_username, c_leavetime)values (aid, c_content, cname, sysdate);end addcomment;-AD
7、DTAGcreate or replace procedure addtag(tagname in tags.t_name%type)asbegininsert into tags(t_name) values (tagname);end addtag;-ADDUSERScreate or replace procedure addusers(v_name in varchar2,v_password in varchar2,v_type in userinfo.usertype%type default 0)asbegininsert into userinfo(username,userp
8、assword,usertype)values (v_name,v_password,v_type);end addusers;-CHECKADMINcreate or replace procedure checkadmin(v_username in varchar2,v_password in varchar2,result out number)isl_count number;beginselect count(*) into l_count from userinfowhere USERNAME = v_username and USERPASSWORD = v_password
9、and usertype = 1;if l_count=0 thenresult:=-1;elseresult:=1;end if;end checkadmin;-CHECKUSERScreate or replace procedure checkusers(v_username in varchar2,v_password in varchar2,result out number)isl_count number;beginselect count(*) into l_count from userinfowhere USERNAME = v_username and USERPASSW
10、ORD = v_password and usertype=0;if l_count=0 thenresult:=-1;elseresult:=1;end if;end checkusers;-DELETEARTICLEcreate or replace procedure deletearticle(id_in in number)asbegindelete from articles where a_id=id_in;end deletearticle;-DELETECOMMENTcreate or replace procedure deletecomment(id_in in numb
11、er)asbegindelete from comments where c_id=id_in;end deletecomment;-DELETETAGcreate or replace procedure deletetag(tagname in tags.t_name%type)asbegindelete from tags where t_name=tagname;end deletetag;-DELETEUSERcreate or replace procedure deleteuser(id_in in number) asbegindelete from userinfo wher
12、e userid=id_in;end deleteuser;-selectarticlecreate or replace procedure selectarticle(cur out article_type.cur_type)isbeginopen cur forselect * from articles;end;-selectcommentcreate or replace procedure selectcomment(aid in comments.a_id%type,cur out comment_type.cur_type)isbeginopen cur forselect
13、* from comments where a_id=aid;end;-selecttagcreate or replace procedure selecttag(cur out tag_type.cur_type)isbeginopen cur forselect * from tags;end;-updatearticlecreate or replace procedure updatearticle(id_in number,title in articles.a_title%type,content in articles.a_content%type,tagname in art
14、icles.t_name%type)asbeginupdate articles set a_title = title, a_content = content , t_name = tagname where a_id = id_in;end updatearticle;-updatepwdcreate or replace procedure updatepwd(u_password in userinfo.userpassword%type)asbeginupdate userinfo set userpassword=u_password where userid=1;end updatepwd;-updatetagcreate or replace procedure updatetag(id_in in number,tagname in varchar2)asbeginupdate tags set t_name=tagname where t_id=id_in;end updatetag;
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1