创建stuDB数据库文档格式.docx
- 文档编号:17751765
- 上传时间:2022-12-09
- 格式:DOCX
- 页数:58
- 大小:36.19KB
创建stuDB数据库文档格式.docx
《创建stuDB数据库文档格式.docx》由会员分享,可在线阅读,更多相关《创建stuDB数据库文档格式.docx(58页珍藏版)》请在冰豆网上搜索。
GO
/*-----建表--------*/
USEstuDB--将当前数据库设置为stuDB
IFEXISTS(SELECT*FROMsysobjectsWHEREname='
stuInfo'
DROPTABLEstuInfo
CREATETABLEstuInfo/*-创建学员信息表-*/
stuNameVARCHAR(20)NOTNULL,--姓名,非空(必填)
stuNoCHAR(6)NOTNULL,--学号,非空(必填)
stuAgeINTNOTNULL,--年龄,INT类型默认为4个字节
stuIDNUMERIC(18,0),--身份证号
stuSeatSMALLINTIDENTITY(1,1),--座位号,自动编号
stuAddressTEXT--住址,允许为空,即可选输入
)
/*-----为表stuInfo添加约束--------*/
ALTERTABLEstuInfo
ADDCONSTRAINTPK_stuNoPRIMARYKEY(stuNo)
ADDCONSTRAINTUQ_stuIDUNIQUE(stuID)
ADDCONSTRAINTDF_stuAddress
DEFAULT('
地址不详'
)FORstuAddress
ADDCONSTRAINTCK_stuAge
CHECK(stuAgeBETWEEN15AND40)
/*-----向表stuInfo中添加测试数据--------*/
insertintostuInfo(stuName,stuNo,stuAge,stuID,stuAddress)
values('
张秋丽'
'
s25301'
18'
111111111111111111'
北京海淀'
insertintostuInfo(stuName,stuNo,stuAge,stuID)
李文才'
s25302'
31'
222222222222222222'
李斯文'
s25303'
22'
333333333333333333'
河南洛阳'
欧阳俊雄'
s25304'
28'
444444444444444444'
新疆'
梅超风'
s25318'
23'
444444444444444445'
stuMarks'
DROPTABLEstuMarks
CREATETABLEstuMarks
ExamNoCHAR(7)NOTNULL,--考号,非空
stuNoCHAR(6)NOTNULL,--学号,非空外键,stuInfo表的主键
writtenExamINTNOTNULL,--笔试成绩
LabExamINTNOTNULL--机试成绩
/*-----为表stuMarks添加约束--------*/
ALTERTABLEstuMarks
ADDCONSTRAINTFK_stuNo
FOREIGNKEY(stuNo)REFERENCESstuInfo(stuNo)
insertintostuMarks(ExamNo,stuNo,writtenExam,LabExam)
s271811'
80'
58'
s271813'
50'
90'
s271815'
65'
0'
s271816'
77'
82'
select*fromstuMarks
USEmaster
IFEXISTS(SELECT*FROMsysdatabasesWHEREname='
bbsDB'
DROPDATABASEbbsDB
EXECxp_cmdshell'
mkdirD:
\project'
--调用DOS命令创建文件夹,后续章节将讲解
CREATEDATABASEbbsDB
ON
(NAME='
bbsDB_data'
FILENAME='
\project\bbsDB_data.mdf'
--主数据文件的物理名
SIZE=10MB,--主数据文件初始大小
FILEGROWTH=20%--主数据文件的增长率
LOGON
bbsDB_log'
\project\bbsDB_log.ldf'
SIZE=3MB,
MAXSIZE=20MB,
FILEGROWTH=10%)
USEbbsDB
/*---检查是否已存在表bbsUsers:
查询bbsDB数据库中的系统表sysobjects---*/
bbsUsers'
DROPTABLEbbsUsers
CREATETABLEbbsUsers
UIDINTIDENTITY(1,1)NOTNULL,--自动编号,标识列
UnameVARCHAR(15)NOTNULL,--呢称
UpasswordVARCHAR(10),--密码
UemailVARCHAR(32),--邮件
UsexBITNOTNULL,--性别
UclassINT,--级别(几星级)
UremarkVARCHAR(255),--备注
UregDateDATETIMENOTNULL,--注册日期
UstateINTNULL,--状态(是否禁言等)
UpointINTNULL--积分(点数)
SELECT*FROMbbsUsers
/*--------bbsUsers表添加约束-------*/
ALTERTABLEbbsUsersADDCONSTRAINTPK_UIDPRIMARYKEY(UID)--主键
ALTERTABLEbbsUsersADDCONSTRAINTDF_UpasswordDEFAULT(8888)FORUpassword--初始密码密码为8888
ALTERTABLEbbsUsersADDCONSTRAINTDF_UsexDEFAULT
(1)FORUsex--性别默认为男
(1)
ALTERTABLEbbsUsersADDCONSTRAINTDF_UclassDEFAULT
(1)FORUclass--级别默认为1星级
ALTERTABLEbbsUsersADDCONSTRAINTDF_UregDateDEFAULT(getDate())FORUregDate--注册日期默认为当前日期
ALTERTABLEbbsUsersADDCONSTRAINTDF_UstateDEFAULT(0)FORUstate--状态默认为离线
ALTERTABLEbbsUsersADDCONSTRAINTDF_UpointDEFAULT(20)FORUpoint--默认积分20点
ALTERTABLEbbsUsersADDCONSTRAINTCK_UemailCHECK(UemailLIKE'
%@%'
)--必须包含'
@'
字符
ALTERTABLEbbsUsersADDCONSTRAINTCK_UpasswordCHECK(LEN(Upassword)>
=6)--至少6位
usebbsDB
--insertintobbsUsers(Uname,upassword,Uemail,Usex,Uclass,Uremark,Ustate,Upoint)
--values('
hehhe'
123456'
s@'
1'
一二三四五六'
20'
insertintobbsUsers(Uname,upassword,Uemail,Usex,Uclass,Uremark,Ustate,Upoint)
可卡因'
HYXS007'
ss@'
我要去公园'
600'
心酸果冻'
888888'
ss1@'
2'
我走遍天涯海角'
200'
冬篱儿'
langdong'
ss2@'
3'
爱迷失在天堂'
4'
1200'
super'
master'
ss3@'
5'
BBS大斑竹'
500'
/*---检查是否已存在表bbsSection:
bbsSection'
DROPTABLEbbsSection
CREATETABLEbbsSection
SIDINTIDENTITY(1,1)NOTNULL,--版块编号,自动编号,标识列
SnameVARCHAR(32)NOTNULL,--版块名称
SmasterIDINTNOTNULL,--版主用户ID,外键,引用用户表bbsUsers的UID
SprofileVARCHAR(20),--版块简介
SclickCountINT,--点击率
StopicCountINT,--发帖数
SELECT*FROMbbsSection
/*--------bbsSection表添加约束-------*/
ALTERTABLEbbsSectionADDCONSTRAINTPK_SIDPRIMARYKEY(SID)--主键
ALTERTABLEbbsSectionADDCONSTRAINTFK_bbsSection_bbsUsersFOREIGNKEY(SmasterID)REFERENCESbbsUsers(UID)--外键
ALTERTABLEbbsSectionADDCONSTRAINTDF_SclickCountDEFAULT(0)FORSclickCount--点击率默认为0
ALTERTABLEbbsSectionADDCONSTRAINTDF_StopicCountDEFAULT(0)FORStopicCount--发帖数默认为0
insertintobbsSection(Sname,SmasterID,Sprofile,SclickCount,StopicCount)
Java技术'
讨论Java相关技术'
.NET'
讨论WEB相关技术'
800'
Linux'
系统维护'
/*---检查是否已存在表bbsTopic:
bbsTopic'
DROPTABLEbbsTopic
CREATETABLEbbsTopic
TIDINTIDENTITY(1,1)NOTNULL,--帖子编号,自动编号,标识列
TsIDINTNOTNULL,--版块编号,外键,引用bbsSection表的主键SID
TuIDINTNOTNULL,--发帖人ID,外键,引用bbsUsers表的主键UID
TreplyCountINTNULL,--回帖数量
TfaceINTNULL,--发帖表情
TtopicVARCHAR(20)NOTNULL,--标题
TcontentsVARCHAR(30)NOTNULL,--正文,必须大于6个字符
TtimeDATETIME,--发帖时间
TclickCountINT,--点击数
TstateINTNOTNULL,--状态
TlastReplyDATETIME--最后恢复时间,必须晚于发帖时间
SELECT*FROMbbsTopic
ALTERTABLEbbsTopicADDCONSTRAINTPK_TIDPRIMARYKEY(TID)--主键
ALTERTABLEbbsTopicADDCONSTRAINTFK_bbsTopic_bbsSectionFOREIGNKEY(TsID)REFERENCESbbsSection(SID)--外键
ALTERTABLEbbsTopicADDCONSTRAINTFK_bbsTopic_bbsUsersFOREIGNKEY(TuID)REFERENCESbbsUsers(UID)--外键
ALTERTABLEbbsTopicADDCONSTRAINTDF_TreplyCountDEFAULT(0)FORTreplyCount--回复数量默认为0
ALTERTABLEbbsTopicADDCONSTRAINTCK_TcontentsCHECK(LEN(Tcontents)>
=6)--至少6个字符
ALTERTABLEbbsTopicADDCONSTRAINTDF_TtimeDEFAULT(getDate())FORTtime--发帖时间,当天
ALTERTABLEbbsTopicADDCONSTRAINTDF_TclickCountDEFAULT(0)FORTclickCount--点击数默认为0
ALTERTABLEbbsTopicADDCONSTRAINTDF_TstateDEFAULT
(1)FORTstate--状态默认为1
ALTERTABLEbbsTopicADDCONSTRAINTCK_TlastReplyCHECK(TlastReply>
TtimeANDTlastReply<
=GETDATE())--
insertintobbsTopic(TsID,TuID,TreplyCount,Tface,Ttopic,Tcontents,TclickCount,Tstate)--,TlastReply)
JSP中的问题'
JSP文件中读取出错'
)--,getDate())
部署.NET的问题'
部署出错hehehhehheheh'
)--,getDate())
配置.NET的问题'
配置出错hehehhehheheh'
updatebbsTopicSETTlastReply=getDate()whereTID=1
updatebbsTopicSETTlastReply=getDate()whereTID=2
updatebbsTopicSETTlastReply=getDate()whereTID=3
bbsReply'
DROPTABLEbbsReply
CREATETABLEbbsReply
RIDINTIDENTITY(1,1)NOTNULL,--帖子编号,自动编号,标识列
RtIDINTNOTNULL,--版块编号,外键,引用bbsSection表的主键SID
RsIDINTNOTNULL,--发帖人ID,外键,引用bbsUsers表的主键UID
RuIDINTNOTNULL,--发帖人ID,外键,引用bbsUsers表的主键UID
RfaceINTNULL,--发帖表情
RcontentsVARCHAR(30)NOTNULL,--正文,必须大于6个字符
RtimeDATETIME,--发帖时间
RclickCountINT,--点击数
SELECT*FROMbbsReply
ALTERTABLEbbsReplyADDCONSTRAINTPK_RIDPRIMARYKEY(RID)--主键
ALTERTABLEbbsReplyADDCONSTRAINTFK_bbsReply_bbsTopicFOREIGNKEY(RtID)REFERENCESbbsTopic(TID)--外键
ALTERTABLEbbsReplyADDCONSTRAINTFK_bbsReply_bbsSectionFOREIGNKEY(RsID)REFERENCESbbsSection(SID)--外键
ALTERTABLEbbsReplyADDCONSTRAINTFK_bbsReply_bbsUsersFOREIGNKEY(RuID)REFERENCESbbsUsers(UID)--外键
ALTERTABLEbbsReplyADDCONSTRAINTCK_RcontentsCHECK(LEN(Rcontents)>
ALTERTABLEbbsReplyADDCONSTRAINTDF_RtimeDEFAULT(getDate())FORRtime--发帖时间,当天
insertintobbsReply(RtID,RsID,RuID,Rface,Rcontents,RclickCo
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 创建 stuDB 数据库