ylbtech-QQ(腾讯)-群空间-数据库设计

ylbtech-DatabaseDesgin:ylbtech-QQ(腾讯)-群空间-数据库设计

DatabaseName:QQ-群空间

Model:群相册、群共享、群论坛、群成员、留言板、公告。6个模块。

Type:空间-群空间、论坛

Url:http://qun.qzone.qq.com/

1.A,数据库关系图(Database Diagram)

ylbtech-QQ(腾讯)-群空间-数据库设计

1.B,数据库设计脚本(Database Design Script)-第一版
use master
go
-- =============================================
-- DatabaseName:QQ-群空间
-- pubdate:16:50 2013-09-26
-- author:Yuanbo
-- http://qun.qzone.qq.com/
-- =============================================
IF EXISTS (SELECT *
FROM master..sysdatabases
WHERE name = N'qq_qun')
DROP DATABASE qq_qun
GO CREATE DATABASE qq_qun
GO
use qq_qun go
-- =============================================
-- ylb:1,账户表
--
-- =============================================
create table account
(
account_id int identity(100000,1) primary key, --编号【PK】
nickname varchar(20) not null, --昵称
pwd varchar(20) not null, --密码
[type] int, --类型 0:QQ号;1:QQ群号
[enable] bit --状态 0:正常;1:禁用
) -- =============================================
-- ylb: 3.1.1 相册表
-- =============================================
create table album
(
album_id int primary key identity(1,1), --编号【PK】
album_name varchar(30) not null, --相册名称
album_desc varchar(80), --相册描述
pubdate datetime default(getdate()), --创建时间
album_url varchar(100), --封面图片 account_qq int references account(account_id), --相册创建者的QQ号
account_qun_id int references account(account_id), --QQ群号
)
GO
-- =============================================
-- ylb: 3.2.1 相片表
-- =============================================
create table photo
(
photo_id int primary key identity(100,1), --编号【PK】
photo_name varchar(30) not null, --相片名称
--photo_desc varchar(100), --描述
photo_url varchar(100), --保存地址
pubdate datetime default(getdate()), --上传时间 album_id int references Album(album_id), --相册编号[FK]
account_qq int references account(account_id), --相册创建者的QQ号
account_qun_id int references account(account_id), --QQ群号
) GO
-- =============================================
-- ylb: 3.2.2 相片评论表
-- =============================================
create table replyphoto
(
replyphoto_id int primary key identity(100,1),--编号
content varchar(200) not null, --评论内容
pubdate datetime default(getdate()), --评论时间
baseId int default(0), --评论级次 0:发表;其他:回复|跟贴 photo_id int references photo(photo_id), --照片编号[FK]
account_qq int references account(account_id), --相册创建者的QQ号
account_qun_id int references account(account_id), --QQ群号
) -- =============================================
-- ylb:1,群共享
--
-- =============================================
create table share
(
[filename] varchar(20), --文件名
ttl datetime, --有效期【14天】
filesize int, --文件大小【8.65KB】
uploaded_author varchar(20), --上传者
pubdate datetime default(getdate()), --上传时间
download_cnt int, --下载次数 account_id int references account(account_id), --上传者QQ号
account_qun_id int references account(account_id) --群编号
)
go
-- =============================================
-- ylb:1,群论坛
--
-- =============================================
create table bbs
(
bbs_id int primary key identity(100,1), --编号【PK】
[subject] varchar(20), --主题
content varchar(400), --内容
pubdate datetime default(getdate()), --创建时间 lock_enable bit, --锁帖|解锁
stick_enable bit, --0:不顶置;1:顶置
tags_enable bit, --0:;1:精华
lightbox_enable bit, --1:高亮 account_qq int references account(account_id), --相册创建者的QQ号
account_qun_id int references account(account_id) --QQ群号
)
go
-- =============================================
-- ylb:1,回复主题
--
-- =============================================
create table replaybbs
(
replaybbs_id int primary key identity(100,1), --编号【PK】
content varchar(400), --内容
pubdate datetime default(getdate()), --创建时间 bbs_id int references bbs(bbs_id), --主题编号
account_qq int references account(account_id), --相册创建者的QQ号
account_qun_id int references account(account_id) --QQ群号
)
go
-- =============================================
-- ylb:1,群成员
--
-- =============================================
create table member
(
member_id int primary key identity(100,1),--编号
group_nikename varchar(30), --群昵称
sex varchar(2), --性别
phone varchar(13), --电话
email varchar(60), --邮箱
remark varchar(200),--备注
pubdate datetime default(getdate()), --创建时间
alow_admin_edit_enable bit, --允许管理员协助修改我的群名片
[role] int, --角色:群主|管理员|成员【power】 account_id int references account(account_id), --上传者QQ号
account_qun_id int references account(account_id)--群编号
)
go
-- =============================================
-- ylb:1,留言板
--
-- =============================================
create table messageboard
(
messageboard_id int primary key identity(100,1),--编号
content varchar(30), --内容
pubdate datetime default(getdate()), --创建时间 account_id int references account(account_id), --上传者QQ号
account_qun_id int references account(account_id)--群编号
)
go
-- =============================================
-- ylb:1,公告
--
-- =============================================
create table notice
(
notice_id int primary key identity(100,1),--编号
content varchar(30), --内容
pubdate datetime default(getdate()), --创建时间 account_id int references account(account_id), --上传者QQ号
account_qun_id int references account(account_id)--群编号
)
go
-- =============================================
-- ylb:1,标签【公共】
--
-- =============================================
create table tag
(
tag_id uniqueidentifier, --guid
tag_name varchar(30), --标签名称
pubdate datetime default(getdate()) --创建时间
)
go
print 'QQ 群空间数据创建成功!'
1.C,数据库设计脚本(Database Design Script)-第二版
ylbtech-QQ(腾讯)-群空间-数据库设计 作者:ylbtech
出处:http://ylbtech.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
上一篇:使用matlab生成用于ROM初始化的coe文件(转)


下一篇:展开被 SpringBoot 玩的日子 《 三 》 整合Redis