您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > SQL数据库课程设计报告
课程设计课程名称___数据库原理及设计___题目名称____电视节目管理系统__学生学院____管理学院____专业班级__学号学生姓名__________指导教师_____________2012年05月15日目录一、概述............................................................................................2二、系统需求分析.............................................错误!未定义书签。三、数据库概念结构设计.................................错误!未定义书签。电视节目管理系统概念结构设计(E-R图):错误!未定义书签。四、数据库的逻辑结构设计.............................错误!未定义书签。4.1E-R图向关系模型的转换(加下划线的为关系的码)错误!未定义书签。4.2用数据库建表并完成数据的完整性....错误!未定义书签。4.3建表的脚本语句....................................错误!未定义书签。4.4建立关系图...........................................错误!未定义书签。4.5数据输入................................................错误!未定义书签。4.6创建视图................................................错误!未定义书签。4.7创建触发器..........................................................................9五、功能演示和破坏数据库完整性调试:5.1功能演示…………………………………………………105.2破坏数据库完整性调试.........................错误!未定义书签。5.3触发器约束..........................................................................12六、遇到的问题:…………………………………………………13七、课程设计心得体会.....................................错误!未定义书签。一、概述随着电子产品的飞速发展,现在很多家庭都能拥有电脑和网络了,那么自然也会有很多人都透过网络观看视频等了,就好像电视节目一样,网络上的一些视频软件同样需要一个电视节目管理系统,而设计电视节目管理这样一个系统,可以涉及到大多数SQLServer数据库的重要数据库对象、重要功能和特性,比如:视图、触发器和存储过程等。由此,通过这个课程设计可以加深对这些SQLServer数据库知识的学习、理解,积累在实际工程应用中运用各种数据库对象的经验,使学生掌握使用应用软件开发工具开发数据库管理系统的基本方法。在实用性方面,客房管理系统是很普遍的一种应用,选择该系统作为课程设计也可以为学生以后可能遇到的实际开发提供借鉴。本课程设计的主要目的是学习和练习SQLServer数据库的实际应用,所以选择SQLServer2005作为数据库服务器。二、系统需求分析随着人们的生活水平提高和科技的飞速发展,一般的电视节目系统已经不能满足人们的需求了,要想让顾客拥有较高的评价就必须站在客户的角度观看问题,要做出一个让客户用起来既方便又功能强大的系统,节目信息安排,电视频道的设定,上一次观看记录这些功能都是必不可少的。三、数据库概念结构设计电视节目管理系统概念结构设计(E-R图)HDEF节目名类别播放时间导演节目观看用户用户编号联系方式用户名播放选择电视频道NM性别演员年龄播放时长同一时段四、数据库的逻辑结构设计4.1E-R图向关系模型的转换(加下划线的为关系的码)节目(节目名,类别,播出时间,演员,导演,频道名)频道(频道名,频道标识,地区,所属电台)播放关系(节目名,频道名,播放时长)用户(用户编号,用户名,性别,年龄,联系方式)选择关系(用户编号,频道名,同一时段)关系规范化:均已达到第三范式4.2用数据库建表并完成数据的完整性(1)节目信息表(Projects):列名数据类型长度允许空说明Projectnamenchar25Notnull节目名称Kindsnchar10Notnull节目类别Showtimenchar10Notnull节目的播出时间Actorsnachar10Null演员名字Editornachar10Null导演名字Channelnamenchar10Notnull频道名称数据完整性:节目表的主键为Projectname(2)频道信息表(Channels):列名数据类型长度允许空说明ChannelnameVarchar25Notnull频道名称Biaozhinachar25Notnull对应电台的标识Placenarchar25null该频道所属的地区Companynachar10Notnull该频道所属的电台公司数据完整性:频道信息表的主键为Channelname(3)用户信息表(Users):列名数据类型长度允许空说明UsernoNachar10Notnull用户编号UsernameNchar10Notnull用户的名字GenderNchar10Notnull用户的性别AgeNchar10Null用户的年龄TelNchar10Null用户的联系方式数据完整性:用户信息表的主键为Userno所属电台频道名频道标识地区(4)播放关系表(Showcont):列名数据类型长度允许空说明ProjectnameNchar25Notnull节目名充当外码ChannelnameNachar10Notnull频道名充当外码TimeNachar10Null播放时长主键外键约束:FK_Showcont_ProjectsFK_Showcont_Channels(5)选择关系表(Selectcont):列名数据类型长度允许空说明UsernoNachar10Notnull用户编号充当外码ChannelnameNachar10Notnull频道名充当外码SametimeNachar10Notnull同一时段主键外键约束:FK_Selectcont_UsersFk_Selectcont_Channels4.3建表的脚步语句:1、建立节目信息表(Projects):CREATETABLE[dbo].[Projects]([Projectname][nchar](25)COLLATEChinese_PRC_CI_ASNOTNULL,[Channelname][nchar](10)COLLATEChinese_PRC_CI_ASNOTNULL,[Kinds][nchar](10)COLLATEChinese_PRC_CI_ASNOTNULL,[Showtime][nchar](10)COLLATEChinese_PRC_CI_ASNOTNULL,CONSTRAINT[PK_Projects]PRIMARYKEYCLUSTERED([Projectname]ASC)WITH(IGNORE_DUP_KEY=OFF)ON[PRIMARY])ON[PRIMARY]2、建立频道信息表(Channels):CREATETABLE[dbo].[Channels]([Channelno][int]NOTNULL,[Channelname][varchar](25)COLLATEChinese_PRC_CI_ASNOTNULL,[Projectname][varchar](25)COLLATEChinese_PRC_CI_ASNULL,[Showtime][varchar](25)COLLATEChinese_PRC_CI_ASNOTNULL,CONSTRAINT[PK_channel]PRIMARYKEYCLUSTERED([Channelno]ASC)WITH(IGNORE_DUP_KEY=OFF)ON[PRIMARY])ON[PRIMARY]3、建立用户信息表(Users):CREATETABLE[dbo].[Users]([Username][nchar](10)COLLATEChinese_PRC_CI_ASNOTNULL,[Showtime][nchar](10)COLLATEChinese_PRC_CI_ASNULL,[Whatched][nchar](10)COLLATEChinese_PRC_CI_ASNULL,[Channeled][nchar](10)COLLATEChinese_PRC_CI_ASNULL,CONSTRAINT[PK_Users]PRIMARYKEYCLUSTERED([Username]ASC)WITH(IGNORE_DUP_KEY=OFF)ON[PRIMARY])ON[PRIMARY]4、建立播放关系表:CREATETABLE[dbo].[Showcont]([Projectname][nchar](25)COLLATEChinese_PRC_CI_ASNOTNULL,[Channelname][nchar](10)COLLATEChinese_PRC_CI_ASNOTNULL,[Time][nchar](10)COLLATEChinese_PRC_CI_ASNULL,CONSTRAINT[PK_Showcont]PRIMARYKEYCLUSTERED([Projectname]ASC,[Channelname]ASC)WITH(IGNORE_DUP_KEY=OFF)ON[PRIMARY])ON[PRIMARY]5、建立选择关系表:CREATETABLE[dbo].[Selectcont]([Userno][nchar](10)COLLATEChinese_PRC_CI_ASNOTNULL,[Channelname][nchar](10)COLLATEChinese_PRC_CI_ASNOTNULL,[Sametime][nchar](10)COLLATEChinese_PRC_CI_ASNOTNULL,CONSTRAINT[PK_Selectcont_1]PRIMARYKEYCLUSTERED([Userno]ASC,[Channelname]ASC)WITH(IGNORE_DUP_KEY=OFF)ON[PRIMARY])ON[PRIMARY]4.4建立关系图:4.5数据输入:节目信息表:频道信息表:用户信息表:4、播放关系表:6、选择关系表:4.6创建视图:1、节目表视图:CREATEVIEW[dbo].[View_Projects]ASSELECTdbo.Projects.*FROMdbo.Projects2、频道表视图:CREATEVIEW[dbo].[View_Channels]ASSELECTdbo.Channels.*FROMdbo.Channels3、用户表视图:CREATEVIEW[dbo].[View_Users]ASSELECTShowtime,Whatched,Channeled,UsernameFROMdbo.Users4、播放视图:CREATEVIEW[dbo].[View_Showcont]ASSELECTdbo.Showcont.*FROMdbo.Showcont5、选择视图:CREATEVIEW[dbo].[View_Selectcont]ASSELECTdbo.Selectcont.*FROMdbo.Selectcont总的视图:4.7创建触发器:(1)在Users表创建一个触发器:CREATETRIGGER[update_user]ON[dbo].[Users]AFTERUPDATEasifupdate(Whatch
本文标题:SQL数据库课程设计报告
链接地址:https://www.777doc.com/doc-5892739 .html