数据库设计说明书.pdf
编号:Database_Asean_20120105_JiXianzhao 数据库设计说明书 项 目:东盟百科信息网 当前版本:完成日期:部 门:技术部 工 号:gx0096 作 者:纪贤钊 职 称:项目负责人:纪贤钊 项目组成员:王欢,梁宇新 文档类型:软件开发系统维护实验研究工程设计工程技术研究 2012 年 1 月 5 日 版本历史 版本状态 作者 参与者 起止日期 备注 V 0.1.0 纪贤钊 梁宇新 2012-1-4 16:15 2012-1-4 16:49 建立了 3 个表 V1.0.0 纪贤钊 完成了大多数基本表的创建,共 11 个,包括:分类表、资讯表、资讯关键字表、词条表、词条内容表、资讯分类绑定表、评论表、页面推送表、国家表、版块表、热点标签表。另外 2 个表,广告位表、广告位比例表,未确定。V1.0.1 纪贤钊 王欢 2012-1-29 17:05 2012-1-30 8:49 在 BS_recommendation 表中增加字段 recomm_news_id;添加外键约束FK_recomm_news_id;修改字段summary 的类型为 varchar(1024)。在 BS_news 表中增加字段 news_image。V1.0.2 纪贤钊 梁宇新 2012-1-31 14:00 2012-1-31 14:07 修改 BS_block 表的block_id 字段为 int 类型。修改 BS_hot_tag 表的 hot_tag_block 字段为int 类型。在BS_hot_tag表中新增hot_tag_order字段。将 hot_tag_block 字段加入到 BS_hot_tag 表的主属性组中。V1.0.3 纪贤钊 梁宇新 2012-2-1 14:00 2012-2-1 14:30 BS_hot_tag 表的 hot_tag_url 字段可空。V1.0.3 纪贤钊 梁宇新 2012-2-2 10:30 2012-2-2 17:00 修改 BS_cat 表的 cat_id 字段为 int 类型,在 BS_news 表的 news_country_id 上定义了参照 cat_id 的外键和级联删除,在 BS_lemma 表的 lemma_country_id 上定义了参照 cat_id的外键和级联置空,重新确定 cat_order 字段的内容格式。修改 BS_country 表的 country_id 字段为 int 类型,在 BS_news 表的 news_cate 定义了外键和级联置空,重新确定 country_order 字段的内容格式。E-R 图 资讯及相关实体 合并合并Rela-News_NewsCategoryBindRela-Country_NewsRela-Category_NewsCategoryBindRela-News_KeyWordRela-Lemma_LemmaContentRela-Lemma_LemmaKeyWordRela-Lemma_CateBindRela-HotTag_BlockRela-Lemma_LemmaDiscussRela-News_Discuss国 家#*国家ID国家Short integerVariable characters(100)资 讯 分 类#*分类ID父分类ID分类名IntegerIntegerVariable characters(100)资 讯#*ooo资讯ID标题简介内容发布时间发布人ID已删除浏览次数回复次数国家ID来源封面图片路径IntegerVariable characters(100)Variable characters(1024)Long variable charactersDate&TimeIntegerBooleanIntegerIntegerIntegerVariable characters(100)Variable characters(200)资 讯 分 类 绑 定#资讯ID分类IDVariable characters(300)Integer关 键 字#资讯ID版本号关键字Variable characters(300)IntegerVariable characters(30)词 条 表#*词条名当前版本浏览次数Variable characters(300)IntegerInteger词 条 内 容#oooo词条名称当前版本编辑用户编辑时间词条内容审核通过Variable characters(300)IntegerIntegerDate&TimeLong variable charactersBoolean词 条 关 键 字#词条名称词条版本词条关键字Variable characters(300)IntegerVariable characters(30)页 面 版 块#*版块ID版块名称Variable characters(50)Variable characters(300)热 点 标 签#o*标签名资讯网址版块IDVariable characters(50)Variable characters(300)Short integer评 论 表#*资讯ID评论用户评论时间评论内容Variable characters(300)IntegerDate&TimeVariable characters(1000)词 条 评 论 表#ooo词条名评论用户 2评论时间2评论内容2Variable characters(300)表结构 BS_cat 分类表 列名 类型 含义 主键 非空 备注 cat_id int ID 自增 cat_father_id int 父 ID 与 cat_name 一起添加唯一索引 cat_name varchar(100)分类名称 cat_order varchar(300)排序字段 以触发器确保非空 CREATE TABLE dbo.BS_cat(cat_id smallint IDENTITY(1,1)NOT NULL,cat_father_id smallint NULL,cat_name varchar(100)NULL,CONSTRAINT PK_BS_cat PRIMARY KEY CLUSTERED (cat_id ASC)WITH(PAD_INDEX =OFF,STATISTICS_NORECOMPUTE =OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS =ON,ALLOW_PAGE_LOCKS =ON)ON PRIMARY)ON PRIMARY BS_news 资讯表 列名 类型 含义 主键 非空 备注 news_id int ID 自增 news_title varchar(100)标题 news_summary varchar(1024)简介 news_content varchar(max)内容 news_time datetime 发布时间 news_publisher int 发布人 ID news_deleted bit 已删除 默认为 0,未删 news_click_count int 浏览次数 默认为 0 news_discussion_count int 回复次数 默认为 0 news_permit bit 审核通过 默认为 0,不通过 news_country_id tinyint 国家 ID news_ origin varchar(300)来源 news_image varchar(200)封面图片路径 news_image_describe varchar(300)封面图片简介 create table BS_news(news_id int identity(1,1),news_title varchar(100),news_cat_id int,news_summary varchar(500),news_content varchar(max);alter table BS_news add constraint PK_news primary key(news_id);alter table BS_news add news_image varchar(200);BS_news_cat 资讯分类表 列名 类型 含义 主键 非空 备注 实际news_cat_id int 类型 ID news_cat_name varchar(100)类型名 BS_news_key_word 资讯分类绑定表 列名 类型 含义 主键 非空 备注 实际非空 news_key_word_news_id int 资讯 ID news_key_word Varchar(30)标签 默认为 1 news_key_word_order tinyint 标签顺序 默认为 0 BS_old_lemma_redirect_lemma_name 旧词条重定向表 列名 类型 含义 主键 非空 备注 实old_lemma_redirect_news_id int 原词条 ID old_lemma_redirect_lemma_name Varchar(300)词条名 BS_lemma 词条表 列名 类型 含义 主键 非空 备注 实际lemma_name varchar(300)词条名 参照词条内容表 lemma_revision int 当前版本 参照词条内容表,默认为 1 lemma_click_count int 浏览次数 默认为 0 lemma_pinyin varchar(1000)拼音 lemma_english varchar(1000)英文 lemma_country_id int 国家 lemma_time datetime 创建时间 lemma_news_id Int 新闻 ID 关联新闻,用于生成测试数据 create table BS_lemma(lemma_name varchar(300)not null,lemma_revision int not null,lemma_click_count int not null);alter table BS_lemma add constraint PK_lemma primary key(lemma_name,lemma_revision);alter table BS_lemma add constraint DF_lemma_revision default(1)for lemma_revision alter table BS_lemma add constraint DF_lemma_click_count default(0)for lemma_click_count BS_lemma_content 词条内容 列名 类型 含义 主键 非空 备注 实际lemma_content_name varchar(300)词条名 lemma_content_revision int 当前版本 lemma_content_editor Int 编辑用户 lemma_content_time Datetime 编辑时间 默认当前时间 lemma_content_summary varchar(1000)摘要 lemma_content_face Varchar(500)摘要图片 lemma_content_face_describe varchar(500)图片描述 lemma_content_content varchar(max)词条内容 Lemma_content_notation Varchar(8000)参考注释 Lemma_content_extent varchar(8000)扩展阅读 lemma_content_permit tinyint 审核通过 默认为 0,不通过 测试阶段,默认为 1 lemma_content_permit_time datetime 通过时间 create table BS_lemma_content(lemma_content_name varchar(300)not null,lemma_content_revision int not null,lemma_content_editor Int not null,lemma_content_time Datetime not null,lemma_content_content varchar(max)not null,lemma_content_permit bit not null)alter table BS_lemma_content add constraint DF_lemma_content_time default(getdate()for lemma_content_time alter table BS_lemma_content add constraint PK_lemma_content primary key(lemma_content_name,lemma_content_revision)alter table BS_lemma_content add constraint DF_lemma_content_revision default(1)for lemma_content_revision alter table BS_lemma_content add constraint DF_lemma_content_permit default(0)for lemma_content_permit alter table BS_lemma_content add lemma_content_summary varchar(1000)alter table BS_lemma_content add lemma_content_face Varchar(500)BS_news_cat_bind 资讯分类绑定表 列名 类型 含义 主键 非空 备注 实际bind_news_id Varchar(300)ID bind_cat_id int 标题 bind_order smallint 排序号 用于确定哪个是主分类 BS_key_word 词条关键字表 列名 类型 含义 主键 非空 备注 Key_word_news_id Varchar(300)ID Key_word Varchar(30)关键字 key_word_version int 版本号 用于词条 默认为 1,包括资讯 key_word_order tinyint 排序号 alter table BS_key_word add constraint DF_key_word_version default(1)for key_word_version BS_discuss 评论表 列名 类型 含义 主键 非空 备注 实际discuss_id int 评论 ID discuss_father_id int 被回复的评论 1级 评 论,与discuss_id 相同。discuss_news_id Varchar(300)资讯 ID 或词条名 discuss_publisher int 评论用户 discuss_time datetime 评论时间 discuss_content Varchar(1000)评论内容 discuss_is_lemma bit 标明是词条或资讯 1 是词条,0 是资讯。默认是 1 alter table BS_discuss add discuss_id int identity(1,1)alter table BS_discuss add discuss_father_id int not null alter table BS_discuss add constraint PK_discuss_id primary key(discuss_id)alter table BS_discuss add discuss_is_lemma bit go alter table BS_discuss add constraint DF_discuss_is_lemma default(1)for discuss_is_lemma go BS_recommendation 页面推送表 列名 类型 含义 主键 非空 备注 recomm_id int ID 自增 title varchar(100)标题 iamges varchar(500)图片 summary varchar(100)简介 page varchar(100)推送对应的页面URL location varchar(100)推送所对应的页面 column varchar(100)推送对应的栏目 note varchar(50)备注 style varchar(100)推送需要填写的内容 recomm_news_id Vrchar(100)被推送的资讯 ID CREATE TABLE dbo.BS_recommendation(recomm_id int IDENTITY(1,1)NOT NULL,title varchar(100)NULL,iamges varchar(500)NULL,summary varchar(100)NULL,page varchar(100)NULL,location varchar(100)NULL,column varchar(100)NULL,note varchar(50)NULL,style varchar(100)NULL,CONSTRAINT PK_BS_image PRIMARY KEY CLUSTERED (recomm_id ASC)WITH(PAD_INDEX =OFF,STATISTICS_NORECOMPUTE =OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS =ON,ALLOW_PAGE_LOCKS =ON)ON PRIMARY)ON PRIMARY alter table BS_recommendation add recomm_news_id int;alter table BS_recommendation add constraint FK_recomm_news_id foreign key(recomm_news_id)references BS_news(news_id);alter table BS_recommendation alter column summary varchar(1024)BS_country 国家表 列名 类型 含义 主键 非空 备注 country_id int ID country_name Varchar(300)国家名 country_father_id int 父 ID Country_order varbinary(300)排序字段 以触发器确保非空 BS_advertize_position 广告位 列名 类型 含义 主键 非空 备注 advertize_position_id tinyint 广 告 位序号 advertize_position_content varchar(500)广 告 代码 advertize_position_describe Varchar(500)广 告 位描述 advertize_position_type int 广 告 类型 外键参照BS_advertize_content_type 表的advertize_content_type_id 字段 alter table BS_advertize_position add advertize_position_type int alter table BS_advertize_position add constraint FK_advertize_position_type foreign key(advertize_position_type)references BS_advertize_content_type(advertize_content_type_id)BS_advertize_content 广告内容表 列名 类型 含义 主键 非空 备注 advertize_content_id int 图片 ID advertize_content_user int 上传人 advertize_content_path varchar(500)文件路径 advertize_content_type int 内容类型 1 是图片,2 是 flash 外键参照BS_advertize_content_typadvertize_content_type_id 字段 advertize_content_time datetime 上传时间 默认当前值 create table BS_advertize_content(advertize_content_id int identity(1,1),advertize_content_user int,advertize_content_path varchar(500),advertize_content_type int,advertize_content_time datetime)alter table BS_advertize_content add constraint PK_advertize_content primary key(advertize_content_id)alter table BS_advertize_content add constraint FK_advertize_content_type foreign key(advertize_content_type)references BS_advertize_content_type(advertize_content_type_id)BS_advertize_content_type 广告内容类型表 列名 类型 含义 主键 非空 备注 advertize_content_type_id int 类型 ID 1 是图片,2 是 flash advertize_content_type_name varchar(100)广告内容类型 create table BS_advertize_content_type(advertize_content_type_id int identity(1,1),advertize_content_type_name varchar(100)alter table BS_advertize_content_type add constraint PK_advertize_content_type primary key(advertize_content_type_id)BS_advertize_proportion 广告位比例 列名 类型 含义 主键 非空 备注 advertize_proportion varchar(50)具体比例 BS_block 版块表 列名 类型 含义 主键 非空 备注 block_id int 版块 ID block_name varchar(300)版块名称 BS_hot_tag 热点标签 列名 类型 含义 主键 非空 备注 hot_tag_name varchar(50)标签名 hot_tag_url varchar(300)资讯网址 hot_tag_block int 版块 ID 外键参照 hot_tag_order int 标签序号 BS_hot_search 热门搜索 列名 类型 含义 主键 非空 备注 实际非hot_search_name varchar(50)搜索的关键字 hot_search_block int 显示位置 hot_search_order int 标签序号 create table BS_hot_search(hot_search_name varchar(50),hot_search_block int,hot_search_order int constraint PK_hot_search primary key(hot_search_name,hot_search_block)BS_user 用户表 列名 类型 含义 主键 非空 备注 user_id int 用户 ID user_pwd user_email user_qq varchar(30)QQ user_msn varchar(30)MSN user_name user_gender user_birth_day user_cellphone varchar(30)手机 user_register_time user_constellation varchar(30)星座 user_career user_address user_personal_site varchar(300)个人站点 user_summary varchar(8000)个人简介 user_permit BS_picture_library 图集表 列名 类型 含义 主键 非空 备注 实际非picture_library_time datetime 创建时间 默认当前 picture_library_title varchar(100)图集标题 picture_library_summary varchar(1000)简介 picture_library_user int 创建人 ID 外键参照用户表的 user_id 字段 picture_library_face varchar(300)图集封面 BS_picture 图片表(每周一图)列名 类型 含义 主键 非空 备注 实际非picture_id int 图片 ID 自增 picture_foreign_library datetime 图集 ID 外 键参 照图 集表的picture_library_time 字段 picture_category_id int 分类 ID 尚未加上参照。参照 BS_cat,东盟美食 东盟旅游 东盟特产 东盟留学 东盟资讯 111 168 134 97 185 picture_title varchar(100)图片标题 picture_time datetime 上传时间 picture_user int 上传人 ID picture_path Varchar(1000)图片存放路径 picture_content Varchar(8000)图片新闻内容 BS_send_mail 系统邮件表 列名 类型 含义 主键 非空 备注 实际非mail_id int 邮件 ID receiver_Email varchar(100)收件人 mail_content varchar(max)邮件内容 mail_status Int 邮件状态 是否发送成功,成功为 1。Sendtime datetime 发送时间 默认当前,由 C#代码传入 BS_lemma_synonym 同义词表 列名 类型 含义 主键 非空 备注 lemma_synonym_lemma varchar(300)词条名 外键参照 BS_lemma 表的lemma_name 字段 尚未设置主键 lemma_synonym_synonym varchar(300)同义词 BS_favourite 我的收藏表 列名 类型 含义 主键 非空 备注 favourite_user_id int 收藏者 favourite_item_name Varchar(300)词条名或资讯 ID favourite_type varchar(50)词条或资讯 favourite_time datetime 收藏时间 create table BS_favourite(favourite_user_id int,favourite_item_name Varchar(300),favourite_type varchar(50),favourite_time datetime constraint PK_favourite PRIMARY KEY(favourite_user_id,favourite_item_name,favourite_type)BS_bourse 交易所表 列名 类型 含义 主键 非空 备注 bourse_name Varchar(100)交易所名称 bourse_chinese_name Varchar(100)交易所中文译名 create table BS_bourse(bourse_name varchar(100)constraint PK_bourse primary key(bourse_name)alter table BS_bourse add bourse_chinese_name varchar(100)go Data prepare insert into BS_bourse(bourse_name)values(FBMKLCI),(HNX Index),(JSX Composite),(PSEi),(SET Index),(ST Index)update BS_bourse set bourse_chinese_name=case when bourse_name=FBMKLCI then 富时马来西亚综合指数 when bourse_name=HNX Index then 河内证券交易所指数 when bourse_name=JSX Composite then(印尼)雅加达综合股价指数 when bourse_name=PSEi then 菲律宾证券交易所指数 when bourse_name=SET Index then 泰国证券交易所指数 when bourse_name=ST Index then 新加坡海峡时报指数 end go BS_bourse_daily 交易日记表 列名 类型 含义 主键 非空 备注 bourse_daily_bourse Varchar(100)交易所名称 bourse_daily_date date 交易日期 bourse_daily_open_time datetime 今开盘时间 bourse_daily_open_price money 今开盘价 bourse_daily_pre_close_price money 昨收盘价 bourse_daily_ins_time datetime 插入数据的时间 默认当前时间 create table BS_bourse_daily(bourse_daily_bourse varchar(100),bourse_daily_date date,bourse_daily_open_price Money not null,bourse_daily_pre_close_price Money not null constraint PK_bokurse_daily primary key(bourse_daily_bourse,bourse_daily_date)constraint FK_bourse_daily_bourse foreign key(bourse_daily_bourse)references BS_bourse(bourse_name)alter table BS_bourse_daily add bourse_daily_ins_time datetime alter table BS_bourse_daily add constraint DF_bourse_daily_ins_time default(getdate()for bourse_daily_ins_time alter table BS_bourse_daily add bourse_daily_open_time datetime BS_bourse_frequency_simple 交易明细表 列名 类型 含义 主键 非空 备注 bourse_frequency_simple_bourse Varchar(100)交易所名称 bourse_frequency_simple_date date 交易日期 bourse_frequency_simple_time datetime 日期时间 bourse_frequency_simple_open_price money 今开盘价 bourse_frequency_simple_pre_close_price money 昨收盘价 bourse_frequency_simple_ins_time datetime 插入数据的时间 默认当前 create table BS_bourse_frequency_simple(bourse_frequency_simple_bourse varchar(100),bourse_frequency_simple_time datetime,bourse_frequency_simple_date date not null,bourse_frequency_simple_last_price Money not null,bourse_frequency_simple_currency varchar(50)not null constraint PK_bourse_frequency_simple PRIMary key(bourse_frequency_simple_bourse,bourse_frequency_simple_time),constraint FK_bourse_frequency_simple_bourse foreign key(bourse_frequency_simple_bourse)references BS_bourse(bourse_name),constraint FK_bourse_frequency_simple foreign key(bourse_frequency_simple_bourse,bourse_frequency_simple_date)references BS_bourse_daily(bourse_daily_bourse,bourse_daily_date)alter table BS_bourse_frequency_simple add bourse_frequency_simple_ins_time datetime alter table BS_bourse_frequency_simple add constraint DF_bourse_frequency_simple_ins_time default(getdate()for bourse_frequency_simple_ins_time RF_admin 后台管理员表 列名 类型 含义 主键 非空 备注 adminID int 管理员 ID 参照 user_id,级联删除 adminlogin Varchar(50)登陆名 adminPwd Varchar(32)密码 state int regTime datetime sex 删 department 删 mobile 删 email 删 idCard 删 remark 不明 groupID 不明 branchID 不明 isSalaryStop 不明 pieceWage 不明 staffCat 不明 license 不明 存储过程 创建词条-key words format:东盟,百科,