《数据库基础》项目一 数据库的建立_第1页
《数据库基础》项目一 数据库的建立_第2页
《数据库基础》项目一 数据库的建立_第3页
《数据库基础》项目一 数据库的建立_第4页
《数据库基础》项目一 数据库的建立_第5页
已阅读5页,还剩233页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据库基础1任务一创建学生班级管理数据库2任务二创建学生班级管理数据表项目一3任务三添加数据和设置约束4任务四数据库、数据表、数据的修改和删除5任务五数据库的导入与导出6任务六数据库的备份与还原知识储备一、SQLServer2005的简介任务一创建学生班级管理数据库

MicrosoftSQLServer是用于电子商务、业务线和数据仓库解决方案的数据库管理和分析系统。MicrosoftSQLServer2005是用于大规模联机事务处理、数据仓库和电子商务应用的数据库平台;也是用于数据集成、分析和报表解决方案的商业智能平台。Microsoft的SQLServer2005产品系列有Enterprise、Developer、Standard、Workgroup、Compact和Express等版本,从而可以更好地满足各个客户领域的需求。任务一创建学生班级管理数据库任务一创建学生班级管理数据库SQLServer2005作为一种低成本主流数据库,呈现了前所未有的价值和功能。SQLServer的最新版本2012版新增了这样一些特性:借助AlwaysOn群集和可用性组实现的高可用性及灾难恢复解决方案、使查询速度飞速提升的xVelocity内存中存储、借助AnalysisServices中的PowerView和表格建模实现的快速数据浏览和可缩放业务智能,以及DataQualityServices带来的全新数据管理能力,相关最新的SQLServer2012详细的资料请参见微软SQL官方网站。知识储备知识储备二、SQLServer2005环境需求任务一创建学生班级管理数据库知识储备三、SQLServer2005系统数据库简介任务一创建学生班级管理数据库1.Master数据库2.Model数据库3.Msdb数据库4.Tempdb知识储备四、SQLServer2005管理平台任务一创建学生班级管理数据库SQLServer2005管理平台(SQLServerManagementStudio)包含了SQLServer2000企业管理器(EnterpriseManager),以及查询分析器(QueryAnalyzer)等方面的功能。此外,SQLServer2005管理平台还提供了一种环境,用于管理AnalysisServices(分析服务)、IntegrationServices(集成服务)、ReportingServices(报表服务)等任务一创建学生班级管理数据库1.商业智能开发平台2.SQLServer分析器3.数据库引擎优化顾问4.分析服务5.SQLServer配置管理器6.SQLServer文档和教程知识储备知识储备五、SQLServer2005的安装任务一创建学生班级管理数据库检查系统的硬件和软件环境是否符合安装SQLServer2005的要求,在计算机光驱中放入安装盘,或者把安装的镜像iso文件装进虚拟光驱,SQL2005EnterpriseEdition安装图解如下,运行光盘后,如图1-1所示。知识储备任务一创建学生班级管理数据库知识储备任务一创建学生班级管理数据库从图1-1中可知,当前的版本是EnterpriseEdition,选择基于x86的操作系统,自动跳转到如图1-2所示的开始安装界面。在图1-2中可以检查硬件的软件要求,如果系统中没有安装过SQLServer2005,可以直接选择安装服务器组件、工具、联机丛书和示例,进行全新独立的安装,弹出如图1-3所示的软件许可条款。在图1-3中,勾选上“我接受许可条款和条件”,单击“下一步”按钮。跳转到如图1-4所示的检查系统是否符合安装SQLServer2005的要求,可以看出SQLServer2005的安装需要.NETFramework2.0的支持,如图1-4所示。知识储备任务一创建学生班级管理数据库知识储备任务一创建学生班级管理数据库知识储备任务一创建学生班级管理数据库在图1-4中安装NETFramework2.0和语言包,MicrosoftSQLNativeClient和MicrosoftSQLServer2005安装程序支持文件。单击“安装”按钮,如图1-5所示,进行下一步操作。安装组件结束之后,提示进行下一步操作,如图1-6所示。在图1-6中,单击“下一步”按钮,进行系统配置检查,SQLServer安装程序对计算机的配置进行扫描,如图1-7所示。在计算机的配置检查后,进入了如图1-8所示的欢迎安装向导界面。在图1-8中,单击“下一步”按钮,安装程序跳转到如图1-9所示的系统配置检查窗口。知识储备任务一创建学生班级管理数据库知识储备任务一创建学生班级管理数据库知识储备任务一创建学生班级管理数据库在图1-9中,检查系统的安装空间大小,硬件需求是否符合最低要求等,检查每一项的状态是否为成功。如果有选项没有通过,需要安装人员进行处理,再重装SQLServer2005,直到所有的状态都成功,若不影响下一步的,可以继续安装。提示进行下一步操作,如图1-10所示。勾选“SQLServerDatabaseServices”,“工作站组件、联机丛书和开发工具”,其他的可选,点击高级按钮,在不同项目在弹出菜单中选择,同时可以更改安装路径。单击“下一步”按钮,进行实例名的设置,安装程序跳转到如图1-11所示默认实例窗口。知识储备任务一创建学生班级管理数据库知识储备任务一创建学生班级管理数据库在图1-11中,这里要注意了,如果电脑以前没有SQLServer的其他产品,直接点下一步,如果电脑上有2005以前的产品时,选择默认实例时2005的安装盘会升级你的以前产品,如果选择命名实例时,则会安装一个新的实例,以前的产品仍然独立运行。选择默认实例,单击“下一步”按钮,安装程序跳转到如图1-12所示的窗口。知识储备任务一创建学生班级管理数据库在图1-12中,选择“使用内置系统帐户”和“本地系统”。安装结束时启动的服务有AnalysisServices和SQLBrowser。单击“下一步”按钮,安装程序跳转到如图113所示的窗口。在图1-13身份验证模式中,可以有两种选择:Windows身份验证模式和混合模式,为了便于后期的学习,在这里选择混合模式,并且要两次输入同样的密码。单击“下一步”按钮,安装程序跳转到如图1-14所示的排序规则设置窗口。知识储备任务一创建学生班级管理数据库知识储备任务一创建学生班级管理数据库知识储备任务一创建学生班级管理数据库在图1-14所示的排序规则设置窗口中,按默认的继续下一步。单击“下一步”按钮,安装程序跳转到如图1-15所示窗口。在图1-15错误和使用情况报告设置窗口中,可以不选。单击“下一步”按钮,安装程序跳转到如图1-16所示的准备安装窗口。经过比较复杂的一段时间过后,开始安装所需要的组件,在图116中,点击“安装”按钮,程序跳转到如图1-17所示的窗口。程序组件安装开始,所需要的时间较长一些,如图1-18所示。检查每一项的安装状态,直到所有都变为绿色的勾号,表示已经顺利安装相应的组件。如图1-19所示。知识储备任务一创建学生班级管理数据库知识储备任务一创建学生班级管理数据库知识储备任务一创建学生班级管理数据库知识储备任务一创建学生班级管理数据库在图1-19中,单击“下一步”按钮,安装程序跳转到如图1-20所示的完成安装窗口。到此,安装MicrosoftSQLServer2005完毕!在图1-20中点击“完成”按钮。如果要在WindowsXP系统下练习和使用数据库的简单功能,可以安装MicrosoftSQLServer2005ExpressEdition版本。类似上述的安装过程,不再重复。现截取安装过程中某个图片,如图1-21所示。知识储备任务一创建学生班级管理数据库任务描述任务一创建学生班级管理数据库数据库包含表、视图、存储过程等数据库对象。以SQLServer2005为例,本项目创建了一个学生班级管理的数据库,名称为information09da2。实训操作任务一创建学生班级管理数据库(1)点击“开始”→“程序”,如图1-22所示。实训操作任务一创建学生班级管理数据库(2)再单击MicrosoftSQLServer2005,如图1-23所示。实训操作任务一创建学生班级管理数据库(3)再单击SQLServerManagementStudio,如图1-24所示。实训操作任务一创建学生班级管理数据库(4)启动SQLServer2005后,选择服务器类型为“数据库引擎”,选择服务器名称为“STUDENT95\\SQLEXPRESS”,身份验证为“Windows身份验证”,如图1-25所示。(5)连接成功如图1-26所示。(6)如果SQLEXPRESS服务没有启动,则连接不成功,给出错误提示,如图1-27所示。(7)在对象资源管理器的树型界面中,展开服务器,选中“数据库”,单击鼠标右键,在弹出的菜单中选择“新建数据库”,如图1-28所示。实训操作任务一创建学生班级管理数据库实训操作任务一创建学生班级管理数据库实训操作任务一创建学生班级管理数据库实训操作任务一创建学生班级管理数据库实训操作任务一创建学生班级管理数据库(8)在“新建数据库”对话框中,点击“常规”,在右侧的“数据库名称”文本框中输入“information09da2”。初始文件大小为10M,其他选项默认。单击“确定”按钮。如图1-29所示。(9)新建数据库information09da2已经完成,如图1-30所示。实训操作任务一创建学生班级管理数据库实训操作任务一创建学生班级管理数据库1任务一、创建学生班级管理数据库2任务二、创建学生班级管理数据表项目一3任务三、添加数据和设置约束4任务四、数据库、数据表、数据的修改和删除5任务五、数据库的导入与导出6任务六、数据库的备份与还原知识储备任务二创建学生班级管理数据表分别使用SQLServer2005数据库管理系统和SQL语句创建数据库和表。下面简单介绍SQLServer中一些常用的对象,如表、视图、索引、存储过程、触发器等。任务二、创建学生班级管理数据表知识储备一、SQLServer中一些常用的对象任务二创建学生班级管理数据表1.表表是SQLServer中最主要的数据库对象,它是用来存储和操作数据的一种逻辑结构。由行和列组成,因此,也称为二维表。知识储备一、SQLServer中一些常用的对象任务二创建学生班级管理数据表每个表都有一个名字,以标识该表。例如表2-1学生情况表,表的名字是学生情况表,共有5列,字段分别是学号、姓名、性别、出生时间和专业。有两名学生记录,一名是张飞,另一名学生是王丽。一般来说,学号是主关键字,不能重复,班级中可能会出现姓名一样的学生,但是学号不能一样,因此,姓名一般不用作关键字。若一个表中有多个候选关键字,则选择其中一个为主关键字,也称为主键。若一个表中只有一个侯选关键字,则该候选关键字就是主关键字。知识储备任务二创建学生班级管理数据表知识储备任务二创建学生班级管理数据表表的第一行为各列的标题栏,其余各行称为记录,表是记录的有限集合。在计算机专业数据库理论课程中,用字母的组合来表示结构的相关信息,例如,如果用Student来表示学生情况表,学号用Sno表示、姓名用Sname表示、性别用Ssex表示、出生时间用Sdatetime表示、专业用Sprofession表示。那么上述表结构可以描述为Student(Sno,Sname,Ssex,Sdatetime,Sprofession)。知识储备任务二创建学生班级管理数据表2.视图视图也是一张表,通常把视图看成是数据库中一张虚拟的表,视图中的数据也都是从数据表中查询出来的数据。视图的作用是为查询者提供所需要的表并提高数据库的安全性。例如,学生信息表包括学号、姓名、所学课程的课程号,课程表有课程号、课程名,若要查询学生学习了哪些课程,可以把学生的信息表和课程表联系在一起进行查询,但是数据量较大时可能需要一定的时间,这是可以考虑使用视图来操作,把查询的学生学号、姓名、课程名放到视图中。知识储备任务二创建学生班级管理数据表3.存储过程存储过程是把对数据表操作的方法存储到一起的一个对象。存储过程的作用可以提高数据库的安全性,通过存储过程可以完成对数据表的查询、添加、修改和删除操作。更详细的内容可以通过搜索createprocedure而得到帮助。知识储备任务二创建学生班级管理数据表4.触发器触发器是一类特殊的存储过程。触发器与表的关系密切,用于保护表中的数据。当有操作影响触发器保护的数据时,触发器自动执行。例如:通过触发器实现多个表间数据的一致性。可以把触发器理解为类似VB中的事件,当条件事件发生时,执行相应的动作。一般情况下,对表数据的操作有:插入、修改、删除,因而,维护数据的触发器也可分为三种类型:insert,update和delete。同一个表中可使用多个触发器,即使同一类型的触发器,也可使用多个。更详细的内容可以通过搜索createtrigger而得到帮助。知识储备二、使用SQLServer2005数据库管理系统创建数据库和表任务二创建学生班级管理数据表将使用SQLServer2005数据库管理系统创建Student数据库,并在Student数据库中创建表Student,使你能够掌握使用SQLServer2005数据库管理系统创建数据库和表的方法。知识储备任务二创建学生班级管理数据表(1)启动SQLServer2005。依次单击开始→所有程序→MicrosoftSQLServer2005→SQLServerManagementStudio,启动SQLServer2005数据库管理系统。(2)登录数据库服务器。点击“连接到服务器”对话框中的连接按钮,连接到SQLServer2005数据库服务器,如图2-1所示。(3)创建数据库student_ssts。在SQLServer2005数据库管理系统的左边栏“对象资源管理器”中右击数据库对象,在弹出的快捷菜单中单击“新建数据库”命令,如图2-2所示。知识储备任务二创建学生班级管理数据表知识储备任务二创建学生班级管理数据表知识储备任务二创建学生班级管理数据表(4)在弹出的“新建数据库”对话框右侧的数据库名称中输入数据库名称“student_ssts”,然后单击确定,如图2-3所示。(5)在student_ssts数据库中新建表:单击SQLServer2005数据库管理系统的左侧的“对象资源管理器”栏中的刷新按钮,以显示出新建的数据库“student_ssts”。依次展开左侧栏对象资源管理器中的“数据库”→“student_ssts”,并右击student_ssts数据库中的表项目,在弹出的快捷菜单中单击“新建表”命令,如图2-4所示。(6)在右侧在工作区中输入“student_SSMS”表的信息,该表具有如下列,如表2-2所示。建立的表结构如图25所示。(7)单击文件菜单中的保存命令保存该表,并取名为“student_SSMS”。知识储备任务二创建学生班级管理数据表知识储备任务二创建学生班级管理数据表知识储备任务二创建学生班级管理数据表知识储备三、使用SQL语句创建数据库和表任务二创建学生班级管理数据表(1)单击工具栏中的“新建查询”按钮,并在弹出的“连接到服务器”对话框中单击“连接”按钮,新建一个SQL脚本,如图2-6所示。(2)在右侧的SQL脚本输入框中输入如下SQL代码:createdatabasestudent_sstsgousestudent_ssts知识储备任务二创建学生班级管理数据表gocreatetablestudent_SQL(Snochar(10)primarykey,Snamenchar(10)notnull,Ssexbit,Sageint,Sdeptnchar(15))知识储备任务二创建学生班级管理数据表知识储备任务二创建学生班级管理数据表任务描述任务二创建学生班级管理数据表在数据库information09da2中,创建数据表,数据表名为“学生信息表”。字段有:学号、姓名、性别、身份证号码、出生日期、手机、家庭地址和系部。实训操作任务二创建学生班级管理数据表(1)与任务一中的步骤1相同,依次单击:开始→程序→MicrosoftSQLServer2005→SQLServerManagementStudio。在弹出连接到服务器对话框中选择“Windows身份验证”,单击“连接”。展开数据库节点,如图2-7所示。(2)打开任务一已经建好的数据库information09da2,点击“+”,展开information09da2,在“表”选项上单击鼠标右键,在出现的快捷菜单中选择“新建表”,如图2-8所示。实训操作任务二创建学生班级管理数据表实训操作任务二创建学生班级管理数据表实训操作任务二创建学生班级管理数据表(3)在列名下输入“学号”,在数据类型中选择“nchar(10)”,在允许空去掉勾号,结果如图2-9所示。4.在“学号”上右击鼠标,选择“设置主键”,如图2-10所示。(5)再输入姓名等其他列名,重复类似操作,结果如图2-11所示。手机号码允许为空,其他列不允许为空。(6)单击菜单栏中的“保存”,保存表。如图2-12所示。(7)在“选择名称”对话框中,输入“学生信息表”。单击“确定”按钮。如图2-13所示。(8)新建“学生信息表”的数据表已经完成,在表节点下已经有“dbo.学生信息表”,如图2-14所示。实训操作任务二创建学生班级管理数据表实训操作任务二创建学生班级管理数据表实训操作任务二创建学生班级管理数据表实训操作任务二创建学生班级管理数据表实训操作任务二创建学生班级管理数据表实训操作任务二创建学生班级管理数据表1任务一、创建学生班级管理数据库2任务二、创建学生班级管理数据表项目一3任务三、添加数据和设置约束4任务四、数据库、数据表、数据的修改和删除5任务五、数据库的导入与导出6任务六、数据库的备份与还原知识储备任务三添加数据和设置约束通常情况下,多个用户在同一时间访问某个数据时,可能导致一部分使用获取的数据是无效的,而数据库中的数据都必须是有效的。约束是数据库中保证数据库里表中数据完整性的手段之一。SQLServer中的完整性包括:实体完整性,区域完整性,参照完整性。实体完整性。针对表中的行数据,要求主键字段都不能为空或者重复的值。例如,身份证号码是唯一的,学号是唯一的,银行卡号是唯一的。区域完整性。保证输入的数据是在有效范围的,可以通过数据类型或check约束设置。任务三、添加数据和设置约束知识储备一、约束的类型任务三添加数据和设置约束1.主键约束(PrimaryKey)主键约束在每个数据表中只有一个,但是一个主键约束可以由多个列组成。主键约束可以保证主键列的数据没有重复且值不为空。在SSMS中设置主键约束,如果主健由多列组成,要用shift选中多个列,再点击主键图标。当创建主键时,系统将自动生成一个以“PK_”为前缀,后跟表名的主键索引,系统自动按聚集索引方式组织。若用SQL语句把学号SNO设置成主键约束,可以写如:SNOchar(8)NOTNULLCONSTRAINTSNO_PKPRIMARYKEY。知识储备任务三添加数据和设置约束2.外键约束(ForeignKey)外键约束也称参照约束,两个表中的数据进行关联,当对两个相关联的表进行数据插入和删除时,保证数据的参照完整性。在SQLServerManagementStudio(SSMS)中,在菜单中选择“表设计器”,再选择“关系”下拉菜单,在外键关系设置对话框中,添加一个默认为“FK_”为前缀,后跟加上两个表的名称的外键约束名称。知识储备任务三添加数据和设置约束3.唯一约束(Unique)唯一约束和主键约束一样都是设置表中的列不能重复的约束,区别是一个表中只能有一个主键约束,却可以有多个唯一约束。如果某列有空值,不能设置为主键约束,但可以设置成唯一约束。一般创建主键约束时,系统会自动生成索引,索引的默认类型为簇索引,而创建唯一约束时,系统会自动生成一个Unique索引,索引的默认类型为非簇索引。知识储备任务三添加数据和设置约束4.检查约束(Check)检查约束是用来指定表中列的值的取值范围的。当输入的值不在有效范围内时,就会出现错误。CHECK约束实际上是字段输入内容的验证规则,表示一个字段的输入内容必须满足CHECK约束的条件。对于TimeStamp和Identity两种类型字段不能定义CHECK约束。知识储备任务三添加数据和设置约束5.非空约束(NotNull)非空约束是约束表中的列不允许为空的。空字符串“”不等于null,0也不等于null。6.默认约束(default)如果插入的新行在定义了默认值的列上没有给出值,那么这个列上的数据就是定义的默认值。如果插入的记录给出了这个列的值,那么该列的数据就是插入的数据。知识储备二、插入记录任务三添加数据和设置约束插入记录是将新记录添加在表尾,可以向表中插入多条记录,可以边插入边修改。输入一列的值,按回车键,光标跳到下一行同列的位置,类似于Excel表中的操作。需要提醒的是,若表的某些列不允许为空,则必须要输入值。显示为<NULL>表示该字段的值为空,没有输入任何值。知识储备任务三添加数据和设置约束插入记录可以用SQLServerManagementStudio操作完成,也可以用TSQL语句操作表数据。INSERT语句的基本格式为:INSERTtable_nameVALUES(constant1,constant2,…)功能:向table_name指定表中添加由values指定的各列值的记录。任务描述任务三添加数据和设置约束打开数据库information09da2中数据表“学生信息表”,添加学生的信息数据,生成学生的每一条记录。实训操作任务三添加数据和设置约束(1)展开已经建立的数据库information09da2,在“学生信息表”选项上单击鼠标右键,在出现的快捷菜单中选择“打开表”,如图3-1所示。(2)在各个字段下输入所有学生信息的内容,学生信息表的记录,如果输入错误,可以直接修改,如图3-2所示。实训操作任务三添加数据和设置约束(3)在输入的过程中,可以发现有许多记录存在重复的字段和类似的字段。现在修改表,在“学生信息表”选项上单击鼠标右键,在出现的快捷菜单中选择“修改”,如图3-3所示。(4)设置默认值约束,例如:该班的学生的系部都是“信息工程系”,所以,可以设置“系部”字段的缺省属性为“信息工程系”,如图3-4所示。实训操作任务三添加数据和设置约束实训操作任务三添加数据和设置约束实训操作任务三添加数据和设置约束实训操作任务三添加数据和设置约束实训操作任务三添加数据和设置约束(5)设置唯一性约束,在“身份证号码”上右击鼠标,选择“索引/键”,如图3-5所示。例如:学生的身份证号唯一,不能重复,可以设置“唯一性约束”。(6)单击“添加”按钮,在常规的“类型”中选择“唯一键”,如图3-6所示。(7)在“列”中选择“身份证号码”,单击“确定”,如图3-7所示。(8)结果如图3-8所示,单击“关闭”。(9)设置检查约束,例如:本班学生记录女生在前面,男生记录在后面,所以性别的字段可以设置检查性约束,只有“男”“女”两项可供选择。在“性别”上右击鼠标,选择“CHECK约束”,如图3-9所示。

实训操作任务三添加数据和设置约束实训操作任务三添加数据和设置约束实训操作任务三添加数据和设置约束实训操作任务三添加数据和设置约束实训操作任务三添加数据和设置约束实训操作任务三添加数据和设置约束(10)在弹出的CHECK结束对话框中,单击“添加”按钮,单击表达式右边“”,如图3-10所示。(11)弹出如图3-11所示的对话框。输入完成后,单击“确定”和“关闭”,再保存表。实训操作任务三添加数据和设置约束实训操作任务三添加数据和设置约束1任务一、创建学生班级管理数据库2任务二、创建学生班级管理数据表项目一3任务三、添加数据和设置约束4任务四、数据库、数据表、数据的修改和删除5任务五、数据库的导入与导出6任务六、数据库的备份与还原知识储备任务四数据库、数据表、数据的修改和删除通常情况下,可以使用SQLServerManagementStudio(SSMS)创建、修改和删除数据库。也可以使用createdatabase语句创建数据库,用alterdatabasedatabase_name修改数据库,用dropdatabasedatabase_name删除数据库。使用SSMS来修改表结构和删除表,也可以使用altertabletable_name修改表结构,使用droptabletable_name删除表,使用sp_renametable_oldname,table_newname重命名表。任务四、数据库、数据表、数据的修改和删除知识储备一、使用T-SQL语句修改、删除数据库任务四数据库、数据表、数据的修改和删除1.ALTERDATABASE修改数据库简单语法格式ALTERDATABASEdatabase_name{MODIFYNAME=new_database_name|COLLATEcollation_name|<file_and_filegroup_options>|<set_database_options>}知识储备一、使用T-SQL语句修改、删除数据库任务四数据库、数据表、数据的修改和删除【例1】将名为“SqlTest”数据库改名为“SqlServer2012Test”。ALTERDATABASESqlTestMODIFYNAME=SqlServer2012Test说明:ALTERDATABASE修改一个数据库或与该数据库关联的文件和文件组。在数据库中添加或删除文件和文件组、更改数据库的属性或其文件和文件组、更改数据库排序规则和设置数据库选项。知识储备一、使用T-SQL语句修改、删除数据库任务四数据库、数据表、数据的修改和删除2.DROPDATABASE语句删除数据库【例2】将名为SqlServer2012Test数据库删除。DROPDATABASESqlServer2012Test。知识储备二、创建数据表和修改数据表任务四数据库、数据表、数据的修改和删除(1)开始→所有程序→MicrosoftSQLServer2005→SQLServerManagementStudio,如图4-1所示。(2)点击连接得如图4-2所示。(3)在工具栏中选择点击“新建查询”,如图4-3所示。知识储备任务四数据库、数据表、数据的修改和删除知识储备任务四数据库、数据表、数据的修改和删除知识储备任务四数据库、数据表、数据的修改和删除知识储备任务四数据库、数据表、数据的修改和删除(4)在编辑框中编辑代码:①创建数据表Student:usestu1createtableStudent(Snochar(10)primarykey,Snamechar(8)unique,Ssexchar(2)check(Ssex=男orSsex=女),Sagesmallint,Sdeptchar(20))如图4-4所示。知识储备任务四数据库、数据表、数据的修改和删除知识储备任务四数据库、数据表、数据的修改和删除其中check(Ssex=男orSsex=女)还可以用语句check(Ssexin(‘男’,’女’))来代替。②创建表Course:usestu1createtableCourse(Cnochar(4)primarykey,Cnamechar(20),Cpnochar(4),Ccreditsmallint,foreignkey(Cpno)referencesCourse(Cno))如图4-5所示。知识储备任务四数据库、数据表、数据的修改和删除③创建表SC:usestu1createtableSC(Snochar(10),Cnochar(4),Gradesmallint,primarykey(Sno,Cno),foreignkey(Sno)referencesStudent(Sno),foreignkey(Cno)referencesCourse(Cno))如图4-6所示。知识储备任务四数据库、数据表、数据的修改和删除知识储备任务四数据库、数据表、数据的修改和删除知识储备任务四数据库、数据表、数据的修改和删除(5)修改表:①在Student表中增加新列Snation(民族):usestu1altertableStudentaddSnationchar(10)如图4-7所示。②增加民族必须取唯一值的约束条件:usestu1altertableStudentaddunique(Snation)如图4-8所示。知识储备任务四数据库、数据表、数据的修改和删除③删除Student表之前要删除SC表:usestu1droptableSC如图4-9所示。④删除表Student:usestu1droptableStudent如图4-10所示。知识储备任务四数据库、数据表、数据的修改和删除知识储备任务四数据库、数据表、数据的修改和删除知识储备任务四数据库、数据表、数据的修改和删除知识储备任务四数据库、数据表、数据的修改和删除知识储备三、使用语句添加、修改、删除记录任务四数据库、数据表、数据的修改和删除(1)先按照以上方法创建表。(2)插入数据:①向Student表中用insert插入数据:usestu1insertintoStudent(Sno,Sname,Ssex,Sage,Sdept)values(001,潘婷,女,21,计算机);insertintoStudent(Sno,Sname,Ssex,Sage,Sdept)知识储备任务四数据库、数据表、数据的修改和删除values(002,孙林,男,21,计算机);insertintoStudent(Sno,Sname,Ssex,Sage,Sdept)values(003,李宏伟,男,20,新闻);insertintoStudent(Sno,Sname,Ssex,Sage,Sdept)values(004,吴静芳,女,20,软件工程);insertintoStudent(Sno,Sname,Ssex,Sage,Sdept)values(005,林妙可,女,19,软件工程);insertintoStudent(Sno,Sname,Ssex,Sage,Sdept)values(006,宣慧,女,22,新闻);点击执行得结果如图4-11所示。知识储备任务四数据库、数据表、数据的修改和删除知识储备任务四数据库、数据表、数据的修改和删除打开Student表课看到如图4-12所示。知识储备任务四数据库、数据表、数据的修改和删除②对Course表插入:usestu1insertintoCourse(Cno,Cname,Cpno,Ccredit)values(1,数据库,5,4);insertintoCoursevalues(2,数学,NULL,2);insertintoCoursevalues(3,网站数据库应用实例,1,4);知识储备任务四数据库、数据表、数据的修改和删除insertintoCoursevalues(4,数据处理,NULL,3);insertintoCoursevalues(5,数据结构,4,3);insertintoCoursevalues(6,操作系统,5,4);insertintoCoursevalues(7,计算机基础,NULL,4);如图4-13所示。知识储备任务四数据库、数据表、数据的修改和删除问题原因:对于课程1先修课程为5,没有在数据库中而出错。对于课程3,应为先修课程为1,而1没有在数据库中,故出错。解决办法:在执行了上面的语句之后,在数据库中运行语句:usestu1insertintoCourse(Cno,Cname,Cpno,Ccredit)values(1,数据库,5,4);insertintoCoursevalues(3,网站数据库应用实例,1,4);如图4-14所示。打开表Course可看到数据如图4-15所示。知识储备任务四数据库、数据表、数据的修改和删除知识储备任务四数据库、数据表、数据的修改和删除知识储备任务四数据库、数据表、数据的修改和删除知识储备任务四数据库、数据表、数据的修改和删除③对SC表插入数据:usestu1insertintoSC(Sno,Cno,Grade)values(001,1,92);insertintoSC(Sno,Cno,Grade)values(001,2,86);insertintoSC(Sno,Cno,Grade)values(001,3,88);insertintoSC(Sno,Cno,Grade)知识储备任务四数据库、数据表、数据的修改和删除values(002,3,89);insertintoSC(Sno,Cno,Grade)values(002,2,90);insertintoSC(Sno,Cno,Grade)values(003,7,89);如图4-16所示。打开SC表可看到数据,如图4-17所示知识储备任务四数据库、数据表、数据的修改和删除(3)修改数据update:①将学生001的年龄改为20岁:usestu1updateStudentsetSage=20whereSno=001如图4-18所示。打开表Student可看到已经修改过的数据,如图4-19所示。知识储备任务四数据库、数据表、数据的修改和删除知识储备任务四数据库、数据表、数据的修改和删除知识储备任务四数据库、数据表、数据的修改和删除知识储备任务四数据库、数据表、数据的修改和删除知识储备任务四数据库、数据表、数据的修改和删除②将所有的学生的年龄增加1岁:usestu1updateStudentsetSage=Sage+1如图4-20所示。打开表Student可看到所有的学生的年龄已经增加1岁,如图4-21所示。知识储备任务四数据库、数据表、数据的修改和删除(4)删除语句:①删除学号为006的学生记录:usestu1deleteFromStudentwhereSno=006如图4-22所示。打开表Student可看到数据,学号为006的学生记录已经被删除,如图4-23所示。知识储备任务四数据库、数据表、数据的修改和删除②若要删除学生表中001号学生,则会出现错误,如图4-24所示。原因应为SC表中有学生001所选修的课程,因而,想要删除001号学生,则需先删除SC表中001号学生的记录。知识储备任务四数据库、数据表、数据的修改和删除知识储备任务四数据库、数据表、数据的修改和删除知识储备任务四数据库、数据表、数据的修改和删除知识储备任务四数据库、数据表、数据的修改和删除知识储备任务四数据库、数据表、数据的修改和删除任务描述任务四数据库、数据表、数据的修改和删除修改数据库information09da2,修改数据表“学生信息表”,修改数据;删除数据库information09da2,删除数据表“学生信息表”,删除数据。实训操作任务四数据库、数据表、数据的修改和删除(1)修改数据库information09da2。在对象资源管理器窗口中,在information09da2节点上单击鼠标右键,在弹出的快捷菜单中单击“属性”菜单项,如图4-25所示。(2)弹出数据库属性窗口,选择左边的“文件”,如图4-26所示。(3)单击“添加”按钮,增加数据库文件infomation0901到primary文件组,文件类型为“数据”;再增加日志文件inforamtion0901_log,文件类型为“日志”,再点击“确定”,修改成功后自动关闭当前窗口,如图4-27所示。(4)修改数据表“学生信息表”,在在对象资源管理器窗口中,依次展开数据库information09da2,展开表,右击“学生信息表”,选择“修改”项,如图4-28所示。实训操作任务四数据库、数据表、数据的修改和删除实训操作任务四数据库、数据表、数据的修改和删除实训操作任务四数据库、数据表、数据的修改和删除实训操作任务四数据库、数据表、数据的修改和删除实训操作任务四数据库、数据表、数据的修改和删除(5)在列名“家庭地址”上单击鼠标右键,在弹出的快捷菜单中单击“插入列”,增加一个新列,如图4-29所示。(6)列名为“邮政编码”,数据类型为char(6),如图4-30所示。(7)在最后插入新字段,列名为“住宿”,数据类型为bit。完成后单击菜单栏中的保存按钮,如图4-31所示。(8)修改数据,打开学生信息表,录入新增字段“邮政编码”和“住宿”的学生信息,若在校住宿数值为“True”,不在校住宿数值为“False”,结果如图4-32所示。(9)删除数据库information09da1,为了便于后面的使用,先建立一个新的数据库information09da1,建立方法类似于任务一,如图4-33所示。实训操作任务四数据库、数据表、数据的修改和删除实训操作任务四数据库、数据表、数据的修改和删除实训操作任务四数据库、数据表、数据的修改和删除实训操作任务四数据库、数据表、数据的修改和删除实训操作任务四数据库、数据表、数据的修改和删除实训操作任务四数据库、数据表、数据的修改和删除(10)展开数据库节点,右击“inforamtion09da1”,在弹出的快捷菜单中单击“删除”选项,删除inforamtion09da1数据库,如图4-34所示。(11)在弹出的“删除对象”对话框中,点击确定,如图4-35所示。(12)删除数据表,用任务二的方法先建立一个新表,表名为“班级住宿与走读表”,右击“班级住宿与走读表”,在弹出的快捷菜单中单击“删除”选项,删除“班级住宿与走读表”。结果如图4-36所示。(13)在弹出的“删除对象”对话框中,单击确定按钮,如图4-37所示。(14)删除数据,打开数据表“学生信息表”,将学号为47,姓名为“宋学伟”的记录删除,在“47”左边的方格上右击鼠标,在弹出的快捷菜单中单击“删除”选项,删除“宋学伟”的学生记录,如图4-38所示。实训操作任务四数据库、数据表、数据的修改和删除实训操作任务四数据库、数据表、数据的修改和删除实训操作任务四数据库、数据表、数据的修改和删除实训操作任务四数据库、数据表、数据的修改和删除实训操作任务四数据库、数据表、数据的修改和删除实训操作任务四数据库、数据表、数据的修改和删除(15)在弹出的对话框中,单击“是”,如图4-39所示。在图4-39中,提示您将要删除1行,删除后将无法撤销所做的更改。实训操作任务四数据库、数据表、数据的修改和删除1任务一、创建学生班级管理数据库2任务二、创建学生班级管理数据表项目一3任务三、添加数据和设置约束4任务四、数据库、数据表、数据的修改和删除5任务五、数据库的导入与导出6任务六、数据库的备份与还原知识储备任务五数据库的导入与导出在SQLServer2005中,可以运用SQLServer导入和导出向导完成数据的导入和导出。“SQLServer导入和导出向导”中有多种数据源和多种数据目标可供选择,例如,MicrosoftOLEDB提供的多种访问接口,SQLServerNativeClient、.NETFramework数据提供程序、MicrosoftOfficeExcel和MicrosoftAccess及平面文件源等。开发人员可以把数据库中的数据导出成需要的格式,也能把兼容的格式导入到数据库中。举例说明:利用导入、导出向导导入Access数据库的步骤如下。任务五、数据库的导入与导出知识储备任务五数据库的导入与导出(1)打开SQLServer管理平台,展开服务器和数据库,右击该数据库图标,从弹出的快捷菜单中选择“任务→导入数据”选项。启动数据导入向导工具,就会出现欢迎使用向导对话框,对话框中列出了导入向导能够完成的操作,如图5-1所示。(2)单击“下一步”按钮,则出现选择数据源对话框,如图52所示。在该对话框中,可以选择数据源类型、文件名、用户名和密码等选项。选择MicrosoftAccess,选择要导入的access文件,如图5-2所示。知识储备任务五数据库的导入与导出(3)单击“下一步”按钮,则出现选择导入的目标数据库类型对话框,如图5-3所示。在目标对话框中选择SQLNativeClient,在服务器名称框中输入目标数据库所在的服务器名称STUDENT92。本例使用SQLServer数据库ssts作为目标数据库。(4)设定完成后,单击“下一步”按钮,出现指定表复制或查询对话框,如图5-4所示。(5)单击“下一步”按钮,就会出现选择源表和源视图对话框,如图5-5所示。在该对话框中,可以设定需要将源数据库中的哪些表格传送到目标数据库中去。单击表格名称左边的复选框,可以选定或者取消对该表格的复制。如果想编辑数据转换时源表格与目标表格之间列的对应关系,可单击表格名称右边的“编辑…”按钮。知识储备任务五数据库的导入与导出(6)在图5-5中单击“下一步”按钮,则会出现“保存并执行包”对话框,如图5-6所示。在该对话框中,可以指定是否希望保存SSIS包,也可以立即执行导入数据操作。(7)单击“下一步”按钮,则出现向导完成确认对话框,如图5-7所示。其中显示了在该向导中进行的设置,如果确认前面的操作正确,单击“完成”按钮后进行数据导入操作,否则,单击“上一步”按钮返回修改。(8)单击“完成”按钮后,如图5-8所示。显示导入成功信息。(9)展开ssts数据库,展开表节点。如图5-9所示,access中的表Texamarrage、Texamctrl等已经全部导入到ssts数据库中。知识储备任务五数据库的导入与导出知识储备任务五数据库的导入与导出知识储备任务五数据库的导入与导出知识储备任务五数据库的导入与导出知识储备任务五数据库的导入与导出知识储备任务五数据库的导入与导出知识储备任务五数据库的导入与导出知识储备任务五数据库的导入与导出知识储备任务五数据库的导入与导出任务描述任务五数据库的导入与导出将任务五文件夹下的“学生医保卡号.xls”文件中的表,导入到information09da2数据库中。将infomration09da2数据库中表“学生信息表”中导出到“D:\任务五”目录下。实训操作任务五数据库的导入与导出(1)在对象资源管理器窗口中,在information09da2节点上单击鼠标右键,在弹出的快捷菜单中单击“任务”→“导入数据”,如图5-10所示。(2)在弹出的SQLServer导入导出向导对话框中,点击“下一步”,然后在数据源中选择“MicrosoftExcel”,并用“浏览”按钮找到文件“学生医保卡号.xls”的路径,如图5-11所示。(3)点击“下一步”按钮,在选择目标窗口中,选择要导入到的目标“MicrosoftOLEDBProviderforSQLServer”,服务器名称为STUDENT95\SQLEXPRESS,使用Windows身份验证,数据库为information09da2,点击“下一步”按钮,如图5-12所示。(4)在指定表复制或查询窗口中,选择默认选项“复制一个或多个表或视图的数据”,点击“下一步”,如图5-13所示。实训操作任务五数据库的导入与导出实训操作任务五数据库的导入与导出实训操作任务五数据库的导入与导出实训操作任务五数据库的导入与导出实训操作任务五数据库的导入与导出(5)在选择源表和源视图窗口中,勾选上“医保卡”,点击“下一步”,如图5-14所示。(6)点击“下一步”,弹出“保存并执行包”对话窗口,如图5-15所示。(7)点击“完成”后,显示执行的结果。如图5-16所示,点击关闭按钮。(8)返回到对象资源管理器窗口中,展开information09da2节点,在表节点上右击鼠标,在弹出的快捷菜单中选择“刷新”,如图5-17所示。(9)可以看到刚刚导入的Excel文件中的数据表“医保卡”,如图5-18所示。(10)以上9步是数据表的导入,下面练习数据表的导出。将infomration09da2数据库中表“学生信息表”中导出到“D:\\任务五”目录下。学生信息表的内容如图5-19所示。实训操作任务五数据库的导入与导出实训操作任务五数据库的导入与导出实训操作任务五数据库的导入与导出实训操作任务五数据库的导入与导出实训操作任务五数据库的导入与导出实训操作任务五数据库的导入与导出实训操作任务五数据库的导入与导出(11)在对象资源管理器窗口中,在information09da2节点上单击鼠标右键,在弹出的快捷菜单中单击“任务”→“导出数据”,如图5-20所示。(12)在弹出的SQLServer导入导出向导对话框中,点击“下一步”,然后在数据源中选择“MicrosoftOLEDBProviderforSQLServer”,服务器名称为STUDENT95\SQLEXPRESS,使用Windows身份验证,数据库为information09da2,如图5-21所示。(13)点击“下一步”按钮,在选择目标窗口中,选择要导入到的目标“MicrosoftExcel”,并用“浏览”按钮找到文件“D:\任务五\导出的学生信息表.xls”,如图5-22所示。(14)在指定表复制或查询窗口中,选择默认选项“复制一个或多个表或视图的数据”,点击“下一步”,如图5-23所示。实训操作任务五数据库的导入与导出实训操作任务五数据库的导入与导出实训操作任务五数据库的导入与导出实训操作任务五数据库的导入与导出实训操作任务五数据库的导入与导出(15)在选择源表和源视图窗口中,选上“学生信息表”,点击“下一步”,如图5-24所示。(16)点击“下一步”,弹出“保存并执行包”对话窗口,如图5-25所示。(17)点击“下一步”和“完成”后,显示执行的结果,如图5-26所示。(18)点击“关闭”后,在D盘下打开任务五文件夹,如图5-27所示。(19)打开“导出的学生信息表.xls”,如图5-28所示。说明导出信息成功,已经成为Excel文件中的一个单独表,数据表的表名为“学生信息表”。在图5-28中,有学生的学号、姓名、性别、身份证号、出生日期、手机、邮政编码、家庭住址和系部等字段。实训操作任务五数据库的导入与导出实训操作任务五数据库的导入与导出实训操作任务五数据库的导入与导出实训操作任务五数据库的导入与导出实训操作任务五数据库的导入与导出1任务一、创建学生班级管理数据库2任务二、创建学生班级管理数据表项目一3任务三、添加数据和设置约束4任务四、数据库、数据表、数据的修改和删除5任务五、数据库的导入与导出6任务六、数据库的备份与还原知识储备任务六数据库的备份与还原数据库备份的重要性不言而喻,利用数据库的备份,可以把实验后的数据恢复到初始状态。当数据库发生故障时,可以迅速恢复丢失的数据。备份和恢复数据库也可以用于其他目的,如可以通过备份与恢复将数据库从一个服务器移动或复制到另一个服务器。在SQLServer2005中,允许备份整个数据库,也可以备份部分数据库,还可以备份一组文件或文件组。任务六、数据库的备份与还原知识储备一、数据库的备份方式任务六数据库的备份与还原1.备份方式可以分为完整备份和差异备份。完整备份指定的所有数据,包括这些数据的日志。差异备份是在完整备份的基础上,如果数据有修改,可以在很短的时间内对修改的数据进行备份,也就是只备份上次完整备份之后发生变化的数据。知识储备任务六数据库的备份与还原2.备份操作角色具有以下角色的成员可以做备份操作:(1)固定的服务器角色系统管理员sysadmin。(2)固定的数据库角色数据库所有者db_owner。(3)固定的数据库角色允许进行数据库备份的用户db_backupoperator。可以通过授权允许其他角色进行数据库备份。3.SSMS中备份数据库选项说明,如图6-1所示。知识储备任务六数据库的备份与还原知识储备任务六数据库的备份与还原(1)源数据库。表示备份的数据库名称。(2)恢复模式。表示当前数据库在需要恢复时采用的模式,该模式可以更改。更改的方法是在右击数据库,选择“属性”,在弹出的“数据库属性”对话框中,选择“选项”标签,在右侧的“恢复模式”下,可以选择“完整”“大容量日志”和“简单”的其中之一。(3)备份组件。在简单恢复模式下,选择备份数据库。(4)名称。可以使用默认的备份集的名称。(5)说明。可以备份的目的和时间,备份的人等事项,也可以省略。(6)备份集过期时间。晚于0天表示永不过期,可以指定天数后过期,可以在指定日期后过期。知识储备任务六数据库的备份与还原(7)备份到。指定备份的目标介质。(8)在“选项”卡中,覆盖媒体下有“追加到现有备份集”和“覆盖所有现有备份集”以及“检查媒体集名称和备份过期时间”。“追加到现有备份集”当备份时,每次都会追加到一个文件中,文件逐渐增大。在“可靠性”部分中,选择“完成后验证备份”,或者“写入介质前检查校验和”,或者“出错时继续”。知识储备任务六数据库的备份与还原4.查看备份集中的数据文件和日志文件连接到相应的MicrosoftSQLServer数据库引擎实例之后,在对象资源管理器中,单击服务器名称以展开服务器树。展开“数据库”,然后根据数据库的不同,选择用户数据库,或展开“系统数据库”,再选择系统数据库。右键单击该数据库,再单击“属性”,这将打开“数据库属性”对话框。在“选择页”窗格中,单击“文件”。在“数据库文件”表格中便可以查看数据和日志文件的列表及其属性。知识储备二、数据库的还原任务六数据库的备份与还原数据库的还原或者称为恢复,当数据库发生故障时,可以从一个或多个备份中还原数据库。有三种还原模式:简单还原模式,完全还原模式,大容量日志还原模式。当使用简单还原模式时,只能还原到备份时刻的数据,因为该模式下,不会备份事务日志,但是完全还原模式却可以。1.恢复模式和支持的还原操作可用于数据库的还原操作取决于所用的恢复模式。表6-1简要说明了每种恢复模式是否支持给定的还原方案以及适用范围。知识储备任务六数据库的备份与还原知识储备任务六数据库的备份与还原2.还原模式的使用(1)简单恢复模式可以最大程度地减少事务日志的管理开销,因为不备份事务日志。如果数据库损坏,则简单恢复模式将面临极大的工作丢失风险。数据只能恢复到已丢失数据的最新备份。因此,在简单恢复模式下,备份间隔应尽可能短,以防止大量丢失数据。但是,间隔的长度应该足以避免备份开销影响生产工作。在备份策略中加入差异备份可有助于减少开销。通常,对于用户数据库,简单恢复模式用于测试和开发数据库,或用于主要包含只读数据的数据库(如数据仓库)。简单恢复模式并不适合生产系统,因为,对生产系统而言,丢失最新的更改是无法接受的。在这种情况下,建议使用完整恢复模式。知识储备任务六数据库的备份与还原(2)完整恢复模式和大容量日志恢复模式提供了更强的数据保护功能。这些恢复模式基于备份事务日志来提供完整的可恢复性及在最大范围的故障情形内防止丢失工作。完整恢复模式:为需要事务持久性的数据库提供了常规数据库维护模式。需要日志备份。此模式完整记录所有事务,并将事务日志记录保留到对其备份完毕为止。如果能够在出现故障后备份日志尾部,则可以使用完整恢复模式将数据库恢复到故障点。完整恢复模式也支持还原单个数据页。知识储备任务六数据库的备份与还原(3)大容量日志恢复模式:此恢复模式可大容量日志记录大多数大容量操作它只用作完整恢复模式的附加模式。对于某些大规模大容量操作(如大容量导入或索引创建),暂时切换到大容量日志恢复模式可提高性能并减少日志空间的使用量。仍需要日志备

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论