码迷,mamicode.com
首页 > 数据库 > 详细

sql - BBS数据库

时间:2016-04-27 20:35:54      阅读:228      评论:0      收藏:0      [点我收藏+]

标签:

第一步:创建数据库,先在d:\创建一个名为db的文件夹

--创建BBs数据库
USE master
go
if exists(select * from sys.databases where name = BBS)
 drop database BBS
    
 go
  create database BBS
  on primary    --存放在主文件组
  (
      name = BBS_data,                --主数据文件
      filename = d:\db\BBS_data.mdf,
      size = 10,
      filegrowth = 20%
  )
  log on
  (
      name = BBS_log,                    --日志文件
      filename = d:\db\BBS_log.ldf,
      size = 1,
      filegrowth = 10%
  )

刷新数据库,右键属性查看文件是否和我们配置的一致

第二步,创建数据表

  --创建论坛用户表
  Use BBS
  go 
  if exists(select * from sys.objects where name = BBSUser)
    drop table BBSUser
    go
    
    create table BBSUser   --论坛用户表
    (
        UID bigint identity(1,1) not null primary key,
        Password varchar(20) not null,        --密码
        UName VarChar(30) not null,            --昵称
        Birthday datetime null,                --生日
        USex bit not null,                    --性别
        Uclass int,                            --等级
        Uremark varchar(50),                --备注
        Uregdata datetime not null,            --注册日期
        UEmail varchar(50) null,            --电子邮箱
        Ustate char(20) not null,            --状态(是否禁言)
        Upoint int null,                    --是否在线
    )
    
    

  --创建论坛模块表
  Use BBS
  go 
  if exists(select * from sys.objects where name = BBSModule)
    drop table BBSModule
    go
    create table BBSModule        --论坛模块表
    (
        MID int identity(1,1) not null primary key,  --板块编号
        Mname varchar(20) not null,                     --板块名称
        MasterId bigint not null,                     --版主id
        Mremark varchar(50),                         --板块介绍
        MClick int,                                     --点击率
        MCount bigint                                 --发帖数
    )
    
    

  --创建帖子表
  Use BBS
  go 
  if exists(select * from sys.objects where name = BBSTopic)
    drop table BBSTopic
    go
    create table BBSTopic
    (
        TID bigint identity(1,1) not null primary key,   --主贴
        TMID bigint not null,                             --隶属板块id
        TUID int not null,                                 --发帖人编号
        TReplyCount int  not null,                         --回复的数量
        TFace int,                                         --发帖心情
        TTitle varchar(50) not null,                     --标题
        TContent text not null,                             --发帖内容
        Ttime datetime not null,                         --发帖时间
        TClick int not null,                             --发帖点击率
        TState int not null,                             --状态
        TLastReply datetime                                 --最后回复时间        
    )
    


  --创建回复表
  Use BBS
  go 
  if exists(select * from sys.objects where name = BBSReply)
    drop table BBSReply
    go    
    create table BBSReply
    (
        RID int identity(1,1) not null primary key,  
        RTID bigint not null,
        RSID bigint not null,
        RUID bigint not null,
        RFace int,
        RCount text not null,
        Rtime datetime not null,
        RClick int not null        
    )

 第三步、添加约束

    
--添加约束


--1、为BBSUser表添加约束
alter table BBSUser add constraint df_USex default 1 for USex
alter table BBSUser add constraint df_Uregdata default getdate() for Uregdata
alter table BBSUser add constraint df_UState default 0 for Ustate
alter table BBSUser add constraint df_UClass default 1 for Uclass
alter table BBSUser add constraint df_UPoint default 20 for Upoint


--2、为BBSModule表添加约束
alter table BBSModule add constraint df_MClient default 0 for MClick
alter table BBSModule add constraint df_MCount default 0 for MCount


--3、为BBSModule添加外键约束
alter table BBSModule add constraint fk_Uid foreign key(MasterId) references BBSUser(UID) 


--4、为BBSTopic表添加约束
alter table BBSTopic add constraint df_Treplycount default 0 for TReplyCount
alter table BBSTopic add constraint df_Ttime default getdate() for Ttime
alter table BBSTopic add constraint df_TClick default 0 for TClick
alter table BBSTopic add constraint df_TState default 1 for Tstate

--5、为BBSTopic表添加外键约束
alter table BBSTopic add constraint fk_TUID foreign key(TUID) references BBSUser(UID)
alter table BBSTopic add constraint fk_MID foreign key(TMID) references BBSModule(MID)

--6、为BBSReply表添加约束
alter table BBSReply add constraint df_Rtime default getdate() for Rtime
alter table BBSReply add constraint df_RClick default 0 for RClick

--7、为BBSReply添加外键约束
alter table BBSReply add constraint fk_RID foreign key(RTID) references BBSTopic(TID)
alter table BBSReply add constraint fk_RMID foreign key(RMID) references BBSModule(MID)
alter table BBSReply add constraint fk_RUID foreign key(RUID) references BBSUser(UID)

 

 在各个数据表约束和键中查看是否正常

sql - BBS数据库

标签:

原文地址:http://www.cnblogs.com/CyLee/p/5440032.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!