SQL Server 2022数据库技术项目教程 教案 项目6 数据库编程操作_第1页
SQL Server 2022数据库技术项目教程 教案 项目6 数据库编程操作_第2页
SQL Server 2022数据库技术项目教程 教案 项目6 数据库编程操作_第3页
SQL Server 2022数据库技术项目教程 教案 项目6 数据库编程操作_第4页
SQL Server 2022数据库技术项目教程 教案 项目6 数据库编程操作_第5页
已阅读5页,还剩16页未读, 继续免费阅读

下载本文档

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

文档简介

PAGE2《SQLServer2022数据库技术项目教程》教案课程名称:数据库应用技术授课年级:202X年级授课学期:202X学年第X学期教师姓名:XX老师2024年5月10日课题名称项目6数据库的编程操作之任务1:视图的创建与应用计划课时2课时内容分析SQLServer数据库除了可以使用SQL语句对表进行增、删、改、查操作,还可以定义视图,通过视图实现数据的查询、插入、修改和删除操作。本章将围绕视图进行详细讲解。教学目标及基本要求使学生掌握视图的创建、修改和删除操作使学生掌握使用视图对数据库中的数据进行查询、修改、删除等操作教学重点创建视图修改视图删除视图视图数据操作教学难点创建视图视图数据操作教学方式讲授为主,讲练结合教学过程教案13视图的创建与应用一、课程引入1.回顾第五章学习知识,引出本节主题带领学生回顾第五章中的SQLServer中的数据查询操作。在数据库操作中,用得最多的就是数据查询,查询数据时,如果数据来自于一张表,使用简单的单表查询语句即可实现,如果数据来自于多张表,则需要使用多表连接查询或嵌套查询,那么是否可以使用别的方式从数据库中获取数据呢?引出本章中所要讲解的内容—建立视图。2.明确学习目标(1)了解视图的概念和作用(2)掌握视图的创建、查看、修改和删除操作(3)掌握视图的数据操作二、新内容的讲解1.创建视图(1)视图的功能视图View是数据库的另一种对象,与表的级别相同,以表的方式显示,有列名和若干行数据。视图是一个虚拟表,它的数据来源于表(一个或多个表,称为基表),甚至是视图,其内容由SELECT语句定义。视图就如同一张表一样,对表能够进行的一般操作都可以应用于视图,例如查询、插入、修改、删除操作等。(2)视图的分类视图分为两类:用户视图和系统视图,前者是用户建立的,后者由系统自动建立。系统视图不可以修改,用户视图不可以修改表结构,但可以进行增删改操作。视图的创建方式有两种:SSMS管理器窗口方式和SQL命令方式。(3)使用SSMS管理器窗口创建视图参考教材【例6-1】。(4)使用SQL命令创建视图命令格式如下:CREATEVIEW[schema_name.]view_name[(column[,...n])][WITH<view_attribute>[,...n]]ASselect_statement[WITHCHECKOPTION][;]<view_attribute>::={[ENCRYPTION][SCHEMABINDING][VIEW_METADATA]}接着,参考教材对使用SQL命令创建视图的格式说明,进行详细讲解。然后,通过案例【例6-2】、【例6-3】详细介绍如何创建视图。2.应用视图视图是一个虚拟表,本身并不存储数据,它的数据来源于表,因此对视图的操作实际上就是对表的操作。与表相比,使用视图对表进行添加记录、更新记录和删除记录等操作会更加简洁方便,命令格式与表操作的命令格式相同,只需将表名修改成视图名即可。只要满足以下条件,就可以通过视图修改基表中的数据:任何修改(包括UPDATE、INSERT和DELETE语句)都只能引用一个基表中的列。视图中正在修改的列必须直接引用表列中的基础数据。被修改的列不受GROUPBY子句、HAVING子句或DISTINCT子句的影响。在视图的查询语句中,TOP子句不能与WITHCHECKOPTION子句一起使用。(1)通过视图插入表数据通过案例【例6-4】详细介绍如何通过视图插入表数据。(2)通过视图更新基表中的记录使用UPDATE命令通过视图可以更新基表中的记录,该命令的要求与INSERT命令的要求相同,命令格式与更新表中记录的命令格式相同。通过案例【例6-5】详细介绍如何通过视图更新基表中的记录。(3)通过视图删除基表中的记录使用DELETE命令通过视图可以删除基表中的记录,该命令的要求与INSERT命令的要求相同,命令格式与删除表中记录的命令格式相同。通过案例【例6-6】详细介绍如何通过视图删除基表中的记录。3.修改视图在定义视图后,可以在SQLServer数据库引擎中修改其定义,而无须使用SSMS管理器窗口或T-SQL命令删除并重新创建视图。(1)修改视图通过案例【例6-7】、【例6-8】详细介绍如何修改视图。(2)删除视图通过案例【例6-9】、【例6-10】详细介绍如何删除视图。三、归纳总结,随堂练习,布置作业(1)对课堂上讲解的知识点进行总结,使用本章后面项目习题巩固本节课的知识点。思考题和习题请参照教材6.1.1&6.1.2&6.1.3节内容完成“技能训练9:视图的建立与管理”教学后记课题名称项目6数据库的编程操作之任务2:游标的创建与应用计划课时2课时内容分析在以前的学习中,增、删、改、查数据库中的数据时,只能一次操作所有记录,若需要每次处理一行或多行记录,可以使用游标实现。教学目标及基本要求使学生掌握游标的创建方法使学生掌握游标的操作流程使学生掌握使用游标提取、更新和删除数据的方法教学重点游标的作用游标的操作流程教学难点创建游标应用游标更新、删除数据教学方式讲授为主,讲练结合教学过程教案14游标的创建与应用一、课程引入1.回顾上一节学习知识,引出本节主题带领学生回顾上一节中的视图操作。在数据库操作中,可以使用视图进行查询、插入、修改和删除操作,如果要操作查询结果中的某一行或部分行,该怎么处理呢?引出本章中所要讲解的内容—游标的创建与应用。2.明确学习目标(1)了解游标的作用(2)掌握游标的操作流程二、新内容的讲解1.游标的创建关系型数据库中的操作会对整个行集起作用。例如,由SELECT语句返回的行集包括满足该语句中的WHERE子句条件的所有行。这种由语句返回的完整行集称为结果集,应用程序并不总能将整个结果集作为一个单元进行有效的处理。这些应用程序需要一种机制以便每次处理一行或一部分行,游标可以满足上述要求。游标的基本操作包括创建游标、打开游标、循环读取游标、关闭游标和删除游标。创建游标的命令格式如下:DECLAREcursor_nameCURSOR[LOCAL|GLOBAL][FORWARD_ONLY|SCROLL][STATIC|KEYSET|DYNAMIC|FAST_FORWARD][READ_ONLY|SCROLL_LOCKS|OPTIMISTIC][TYPE_WARNING]FORselect_statement[FORUPDATE[OFcolumn_name[,...n]]][;]接着,参考教材中创建游标的格式说明,进行详细讲解。然后,通过案例【例6-11】详细介绍如何创建游标。2.游标的应用在创建好游标以后,可以先使用“OPENcursor_name;”语句打开游标,再使用“FETCHcursor_name;”语句检索游标中的数据。(1)使用游标提取数据使用游标可以检索特定的行,命令格式如下:FETCH[[NEXT|PRIOR|FIRST|LAST|ABSOLUTE{n|@nvar}|RELATIVE{n|@nvar}]FROM]{{[GLOBAL]cursor_name}|@cursor_variable_name}[INTO@variable_name[,...n]]接着,参考教材中使用游标提取数据的格式说明,进行详细讲解。然后,通过案例【例6-12】、【例6-13】详细介绍如何使用游标提取数据。(2)使用游标更新或删除数据除了可以使用游标读取数据,还可以使用游标更新或删除数据。通过案例【例6-14】详细介绍如何使用游标更新数据。通过案例【例6-15】详细介绍如何使用游标删除数据。(3)关闭与释放游标①关闭游标在使用完游标后,需要关闭游标。关闭游标的命令格式如下:CLOSEcursor_name;格式说明:cursor_name表示游标名。②释放游标如果游标不再使用,则可以释放游标。释放游标的命令格式如下:DEALLOCATEcursor_name;格式说明:cursor_name表示游标名。三、归纳总结,随堂练习,布置作业(1)对课堂上讲解的知识点进行总结,使用本章后面项目习题巩固本节课的知识点。思考题和习题请参照教材6.2.1&6.2.2节内容完成“技能训练10:游标的创建与使用”。教学后记课题名称项目6数据库的编程操作之任务3:存储过程的创建与管理计划课时4课时内容分析在数据库开发过程中,经常需要完成一些特定的功能,且这些功能在很多场合都被采用,此时,可以将实现这些功能的SQL语句放置在存储过程中,在需要这些功能的场合,只需调用该存储过程即可。教学目标及基本要求使学生掌握变量的使用使学生掌握无参、带输入参数、带输出参数的存储过程的创建使学生掌握执行存储过程使学生掌握修改和删除存储过程教学重点存储过程的创建执行修改存储过程教学难点存储过程的创建与执行存储过程的错误处理教学方式讲授为主,讲练结合教学过程教案15存储过程的创建与管理一、课程引入1.回顾上一节学习知识,引出本节主题带领学生回顾上一节中的游标操作。在SQLServer中,如何像Java语言一样,预先定义好方法,在适当的时候,直接调用方法来实现某一功能,引出本章中所要讲解的内容存储过程。存储过程是SQL语句和可选控制流语句的预编译集合,它们被存储在数据库中,并可以由应用程序通过一个调用执行。2.明确学习目标(1)了解存储过程的创建方式(2)掌握无参数、带输入参数、带输出参数存储过程的创建方法二、新内容的讲解存储过程(StoredProcedure)简称过程,就是为了完成一定的功能而编写的程序段,由一系列SQL语句构成,相当于C语言中的函数或Java语言中的方法,通过调用存储过程名来执行存储过程。存储过程存放在数据库对象中,属于数据库,与表和视图的级别相同。存储过程的创建方法有两种:一种是使用SSMS管理器窗口,另一种是使用SQL命令。1.使用SSMS管理器窗口创建存储过程通过案例【例6-16】详细介绍如何使用SSMS管理器窗口创建存储过程。2.使用SQL命令创建存储过程创建存储过程的命令格式如下:CREATE{PROC|PROCEDURE}[schema_name.]procedure_name[;number][{@parameter_name[type_schema_name.]data_type}[VARYING][NULL][=default][OUT|OUTPUT|[READONLY]][,...n][WITH<procedure_option>[,...n]][FORREPLICATION]AS{[BEGIN]sql_statement[;][...n][END]}[;]<procedure_option>::=[ENCRYPTION][RECOMPILE][EXECUTEASClause]接着,参考教材中创建存储过程的格式说明,进行详细讲解。(1)创建无参数存储过程通过案例【例6-17】、【例6-18】详细介绍如何创建无参数存储过程。(2)创建带输入参数的存储过程存储过程是一个子程序,可以在创建存储过程的代码中设计若干个参数,这种参数称为形式参数,而在调用存储过程时,传递给存储过程的参数称为实际参数。在定义参数时,必须明确该参数是输入参数还是输出参数。如果参数的后面添加了关键字OUTPUT,则该参数是输出参数;如果参数的后面没有添加关键字OUTPUT,则该参数是输入参数,带输入参数的存储过程使用更广泛。接下来,通过案例【例6-19】、【例6-20】详细介绍如何创建带输入参数的存储过程。在使用存储过程时,要注意以下两点:①在定义参数时,形式参数名最好不要与对应的列名完全相同,以免引起混淆,但相同并不会出错。②在执行存储过程时,实际参数要与形式参数的个数相等、类型一致、顺序相同。(3)创建带输入参数和输出参数的存储过程存储过程可以带输出参数,用于将运行结果返回给该存储过程的调用方。在定义输出参数时,需要在参数的后面添加关键字OUTPUT。在编写存储过程时,经常需要定义变量,以保存中间结果。在SQLServer2022中,定义变量的命令是DECLARE,格式如下:DECLARE变量名类型(长度)在调用带输出参数的存储过程时,也需要设计一段代码才能将结果保存到指定的变量中,供其他程序使用。通过案例【例6-21】详细介绍如何创建带输入参数和输出参数的存储过程。3.执行存储过程(1)执行系统存储过程系统存储过程以前缀sp_开头。因为从逻辑意义上讲,这些系统存储过程出现在所有用户定义的数据库和系统定义的数据库中,所以可以在任意数据库中执行这些系统存储过程,而不必完全限定系统存储过程的名称。但是,建议使用sys架构名称对所有系统存储过程的名称进行架构限定,以防止名称冲突,如“EXECsys.sp_who;”。(2)执行用户定义的存储过程当执行用户定义的存储过程时,建议使用架构名称来限定存储过程的名称。这种做法可以使性能得到小幅度提升,因为数据库引擎不必搜索多个架构。如果某个数据库在多个架构中存在同名的存储过程,则还可以防止执行错误的存储过程。(3)使用SSMS管理器窗口执行存储过程(4)使用Transact-SQL命令执行存储过程执行存储过程的命令格式如下:[{EXEC|EXECUTE}]procedure_name[{value|@variable[OUT|OUTPUT]}][,...n][WITH<execute_option>[,...n]]}[;]<execute_option>::={RECOMPILE|{RESULTSETSUNDEFINED}|{RESULTSETSNONE}|{RESULTSETS(<result_sets_definition>[,...n])}}接着,参考教材中执行存储过程的格式说明,进行详细讲解。通过案例【例6-22】详细介绍如何执行存储过程。4.管理存储过程(1)修改存储过程修改存储过程的方法有两种:一种是使用SSMS管理器窗口,另一种是使用T-SQL命令。使用SSMS管理器窗口修改存储过程通过案例【例6-23】详细介绍如何使用SSMS管理器窗口修改存储过程。②使用SQL命令修改存储过程修改存储过程的命令格式如下:ALTER{PROC|PROCEDURE}[schema_name.]procedure_name[;number][{@parameter_name[type_schema_name.]data_type}[VARYING][=default][OUT|OUTPUT][READONLY]][,...n][WITH<procedure_option>[,...n]][FORREPLICATION]AS{[BEGIN]sql_statement[;][...n][END]}[;]<procedure_option>::=[ENCRYPTION][RECOMPILE][EXECUTEASClause]修改存储过程的命令格式与创建存储过程的命令格式基本一致,只需将创建存储过程的命令格式中的CREATE修改成ALTER即可。通过案例【例6-24】详细介绍使用SQL命令修改存储过程。(2)删除存储过程删除存储过程的方法有两种:一种是使用SSMS管理器窗口,另一种是使用T-SQL命令。使用SSMS管理器窗口删除存储过程通过案例【例6-25】详细介绍使用SSMS管理器窗口删除存储过程。②使用T-SQL命令删除存储过程。删除存储过程的命令格式如下:DROP{PROC|PROCEDURE}[IFEXISTS]{[schema_name.]procedure}[,...n]格式说明:IFEXISTS:有条件地删除存储过程(仅当其已存在时)。schema_name:存储过程所属架构的名称。procedure:要删除的存储过程的名称。通过案例【例6-26】详细介绍使用T-SQL命令删除存储过程。三、归纳总结,随堂练习,布置作业(1)对课堂上讲解的知识点进行总结,使用本章后面项目习题巩固本节课的知识点。思考题和习题请参照教材6.3.1&6.3.2&6.3.3&6.3.4节内容完成“技能训练11:存储过程的创建与调用”。教学后记课题名称项目6数据库的编程操作之任务4:触发器的创建与管理计划课时2课时内容分析当我们在学生表中插入一条学生记录时,学生所在班级的班级表中对应的班级人数字段应相应增加1个,当我们删除学生表中的多条记录时,学生所在班级的班级表中对应的班级人数相应减少,此时,可以采用触发器实现。教学目标及基本要求使学生理解触发器的概念、类型和作用使学生掌握触发器的创建、管理使学生能够根据业务需求设计并实现触发器教学重点触发器的概念触发器的类型触发器的创建与管理教学难点触发器逻辑的编写触发器的调试和维护教学方式讲授为主,讲练结合教学过程教案16触发器的创建与管理一、课程引入1.回顾上一节学习知识,引出本节主题带领学生回顾上一节中的存储过程操作。提出问题:如何确保数据在插入、更新或删除时保持完整性?如何自动执行某些业务规则?如:添加、删除学生记录时,该学生所在班级的人数是否需要自动更新,如何实现班级人数的自动更新,引出本章中所要讲解的内容触发器。2.明确学习目标(1)理解触发器的基本概念(2)掌握触发器的创建(3)掌握Inserted和Deleted表的使用(4)应用触发器确保数据完整性和业务规则(5)将触发器应用于实际项目,提高问题解决能力二、新内容的讲解触发器为特殊类型的存储过程,可以在INSERT、UPDATE或DELETE语句执行时自动生效,以便影响触发器中定义的表或视图。触发器可以用于强制执行业务规则和确保数据完整性。将触发器和触发它的语句作为可以在触发器内回滚的单个事务对待。如果检测到错误(如磁盘空间不足),则整个事务自动回滚。1.触发器的分类(1)AFTER触发器在执行INSERT、UPDATE或DELETE语句的操作之后执行AFTER触发器。如果违反了约束,则永远不会执行AFTER触发器。因此,这些触发器不能用于任何可能防止违反约束的处理。(2)INSTEADOF触发器INSTEADOF触发器用来代替通常的触发动作,即当对表进行INSERT、UPDATE或DELETE操作时,系统不是直接对表执行这些操作,而是把操作内容交给触发器,让触发器检查所进行的操作是否正确,如果操作正确才进行相应的操作。在触发器操作中,系统会建立INSERTED和DELETED两个临时表,如表6-1所示。表6-1INSERTED表和DELETED表触发操作INSERTED表DELETED表INSERT存放插入的数据无UPDATE存放更新后的数据存放更新前的数据DELETE无存放被删除的数据2.创建触发器(1)触发器的创建方式触发器的创建方法有两种:一种是使用SSMS管理器窗口,另一种是使用SQL命令。①使用SSMS管理器窗口创建触发器通过案例【例6-26】详细介绍如何使用SSMS管理器窗口创建触发器。②使用SQL命令创建触发器在创建触发器之前,首先需要确定触发器对应的表、要触发哪个操作、是采用AFTER触发器还是采用INSTEADOF触发器。创建触发器的命令格式如下:CREATETRIGGER[schema_name.]trigger_nameON{table|view}[WITH<dml_trigger_option>[,...n]]{FOR|AFTER|INSTEADOF}{[INSERT][,][UPDATE][,][DELETE]}[WITHAPPEND][NOTFORREPLICATION]AS{sql_statement[;][,...n]}<dml_trigger_option>::=[ENCRYPTION][EXECUTEASClause]接着,参考教材中创建触发器的格式说明,进行详细讲解。(2)分类创建触发器①创建INSERT触发器通过案例【例6-26】详细介绍如何创建INSERT触发器。②创建UPDATE触发器通过案例【例6-27】详细介绍如何创建UPDATE触发器。③创建DELETE触发器通过案例【例6-28】详细介绍如何创建DELETE触发器。④创建INSTEADOF触发器通过案例【例6-29】详细介绍如何创建INSTEADOF触发器。3.管理触发器(1)修改触发器修改触发器的方法有两种:一种是使用SSMS管理器窗口,另一种是使用SQL命令。①使用SSMS管理器窗口修改触发器②使用SQL命令方式修改触发器修改触发器的命令格式如下:ALTERTRIGGER[schema_name.]trigger_nameON{table|view}[WITH<dml_trigger_option>[,...n]]{FOR|AFTER|INSTEADOF}{[INSERT][,][UPDATE][,][DELETE]}[WITHAPPEND][NOTFORREPLICATION]AS{sql_statement[;][,...n]}<dml_trigger_option>::=[ENCRYPTION][EXECUTEASClause]修改触发器的命令格式与创建触发器的命令格式基本一致,只需将CREATE修改为ALTER即可。(2)删除触发器在删除触发器后,该触发器将从当前数据库中删除,它所基于的表和数据不会受到影响,删除表将自动删除其上的所有触发器。删除触发器的方法有两种:一种是使用SSMS管理器窗口,另一种是使用SQL命令。①使用SSMS管理器窗口删除触发器通过案例【例6-30】详细介绍如何使用SSMS管理器窗口删除触发器。②使用SQL命令方式删除触发器删除触发器的命令格式如下:DROPTRIGGER[IFEXISTS][schema_name.]trigger_name[,...n][;]格式说明:IFEXISTS:有条件地删除触发器(仅当其已存在时)。schema_name:触发器所属架构的名称。trigger_name:要删除的触发器的名称。通过案例【例6-31】详细介绍如何使用SQL命令方式删除触发器。三、归纳总结,随堂练习,布置作业(1)对课堂上讲解的知识点进行总结,使用本章后面项目习题巩固本节课的知识点。思考题和习题请参照教材6.4.1&6.4.2&6.4.3节内容完成“技能训练12:触发器的创建与使用”。教学后记课题名称项目6数据库的编程操作之任务5:索引与事务的应用计划课时2课时内容分析当表中有大量记录时,如果要对表进行查询,先在表中建立索引,然后在索引中找到符合查询条件的索引值,最后通过保存在索引中行号快速找到表中对应的记录。在数据库中,我们经常需要进行一系列插入、更新或删除操作。这些操作需要确保数据的一致性和完整性,即要么全部成功执行,要么全部不执行。这就是事务。教学目标及基本要求使学生了解索引的基本概念、作用以及种类。使学生能够根据数据库查询需求,合理地创建和使用索引。使学生了解事务的概念、特性(ACID属性)。使学生能够掌握事务的基本操作,包括事务的启动、提交和回滚等。教学重点索引的基本概念、分类索引的创建与维护事务的基本概念、事务的ACID特性事务操作教学难点索引的选择与维护并发事务的处理事务的隔离级别事务的实际应用教学方式讲授为主,讲练结合教学过程教案17索引与事务的应用一、课程引入1.回顾上一节学习知识,引出本节主题带领学生回顾上一节中的触发器操作。假如你正在阅读一本大百科全书,如果没有目录或者索引,你需要一页一页地翻阅,花费大量的时间去寻找你想要的信息。有了索引,你可以迅速定位到你所需信息的页码,提高了查找效率。在数据库中,索引的作用与之类似。当我们对数据库进行查询时,如果没有索引,SQLServer可能需要对整个表进行扫描以找到匹配的数据,耗费大量的时间和计算资源。而有了索引,SQLServer可以迅速定位到所需的数据,大大提高了查询速度,引出本章中所要讲解的内容索引与事务的应用。2.明确学习目标(1)理解索引的概念和类型(2)掌握索引的创建与维护(3)理解事务的概念和隔离级别(4)掌握事务操作二、新内容的讲解1.索引的创建与使用索引(Index)是表的对象,它属于表,使用索引可以快速访问数据库的表中的特定信息,提高检索速度。索引是对表中一列或多列的值进行排序的一种结构。索引是一个单独的、物理的数据结构,它是某个表中一列或若干列的值的集合和相应指向表中物理标识这些值的数据页面的逻辑指针清单。索引提供指向存储在表的指定列中的数据值的指针,然后根据指定的排序顺序对这些指针进行排序。使用索引有以下4个优点:提高数据的检索速度。创建唯一性索引,保证数据表中每行数据的唯一性。加速表和表之间的连接。在使用分组和排序子句进行数据检索时,可以显著减少查询中分组和排序的时间。使用索引有以下3个缺点:创建索引和维护索引要耗费时间。索引需要占用物理空间。当对表中的数据进行增加、删除和修改操作时,索引也要动态地维护,降低了数据的维护速度。在创建索引时,必须确定要使用哪些列及要创建的索引类型。SQLServer2022中主要的索引类型如表6-2所示。表6-2SQLServer2022中主要的索引类型索引类型描述聚集聚集索引根据聚集索引键按照顺序对表或视图的数据行进行排序和存储非聚集非聚集索引可以在具有聚集索引的表或视图上定义,也可以在堆上定义。非聚集索引中的每个索引行都包含非聚集键值和行定位器。该定位器指向聚集索引或堆中具有键值的数据行。索引中的行按照索引键值的顺序存储,但除非在表上创建聚集索引,否则不能保证数据行按照任何特定的顺序存储唯一唯一索引确保索引键不包含重复的值,因此,表或视图中的每行在某种程度上是唯一的。唯一性可以是聚集索引和非聚集索引的属性创建索引的方法有两种:一种是使用SSMS管理器窗口,另一种是使用SQL命令。本任务的例题均以libsys数据库为例。(1)使用SSMS管理器窗口创建索引在创建索引时,首先需要确定表的索引列。如果表没有主键约束,则可以创建聚集索引;如果表有主键约束,则系统禁止创建聚集索引,只能创建非聚集索引,因为系统把主键当成聚集索引,而聚集索引只能有一个。通过案例【例6-34】详细介绍如何使用SSMS管理器窗口创建索引。(2)使用SQL命令创建索引创建索引的命令格式如下:CREATE[UNIQUE][CLUSTERED|NONCLUSTERED]INDEXindex_nameON<object>(column[ASC|DESC][,...n])<object>::={database_name.schema_name.table_or_view_name|schema_name.table_or_view_name|table_or_view_name}接着,参考教材中使用SQL命令创建索引的格式说明,进行详细讲解。通过案例【例6-35】、【例6-36】详细介绍如何使用SQL命令创建索引。(3)查看表中的索引要查看表中的索引,可以用系统存储过程sp_helpindex实现,格式如下:sp_helpindex表名(4)重命名索引①使用表设计窗口重命名索引②使用“对象资源管理器”窗口重命名索引③使用SQL命令重命名索引使用SQL命令重命名索引的格式如下:sp_rename[@objname=]'object_name',[@newname=]'new_name'格式说明:[@objname=]'object_name':需要重命名的索引名,object_name必须采用table.index或schema.table.index格式。[@newname=]'new_name':指定索引的新名称,并且该名称必须遵循标识符的规则。通过案例【例6-37】详细介绍如何使用SQL命令重命名索引。(5)删除索引使用DROP命令删除索引,格式如下:DROPINDEX[IFEXISTS]表名.索引名[,…]通过案例【例6-38】详细介绍如何使用DROP命令删除索引。2.处理事务事务是一个单一的工作单元。如果事务成功,则事务期间所做的所有数据修改都将被提交,并成为数据库的永久组成部分。如果事务遇到错误,必须取消或回滚,则所有数据修改都将被擦除。也就是说,操作作为一个整体成功或失败。SQLServer2022以下列事务模式运行:(1)自动提交事务:每条单独的语句都是一个事务。(2)显式事务:每个事务均以BEGINTRANSACT

温馨提示

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

最新文档

评论

0/150

提交评论