首页 - 网校 - 万题库 - 直播 - 雄鹰网校 - 团购 - 书城 - 模考 - 学习通 - 导航 -
首页网校万题库直播雄鹰网校团购书城模考论坛实用文档作文大全宝宝起名
2015中考
法律硕士
2015高考
MBA考试
2015考研
MPA考试
在职研
中科院
考研培训
专升本
自学考试 成人高考
四 六 级
GRE考试
攻硕英语
零起点日语
职称英语
口译笔译
申硕英语
零起点韩语
商务英语
日语等级
GMAT考试
公共英语
职称日语
新概念英语
专四专八
博思考试
零起点英语
托福考试
托业考试
零起点法语
雅思考试
成人英语三级
零起点德语
等级考试
华为认证
水平考试
Java认证
职称计算机 微软认证 思科认证 Oracle认证 Linux认证
公 务 员
导游考试
物 流 师
出版资格
单 证 员
报 关 员
外 销 员
价格鉴证
网络编辑
驾 驶 员
报检员
法律顾问
管理咨询
企业培训
社会工作者
银行从业
教师资格
营养师
保险从业
普 通 话
证券从业
跟 单 员
秘书资格
电子商务
期货考试
国际商务
心理咨询
营 销 师
司法考试
国际货运代理人
人力资源管理师
广告师职业水平
卫生资格 执业医师 执业药师 执业护士
会计从业资格
基金从业资格
统计从业资格
经济师
精算师
统计师
会计职称
法律顾问
ACCA考试
初级会计职称
资产评估师
高级经济师
注册会计师
高级会计师
美国注册会计师
审计师考试
国际内审师
注册税务师
理财规划师
一级建造师
安全工程师
设备监理师
公路监理师
公路造价师
二级建造师
招标师考试
物业管理师
电气工程师
建筑师考试
造价工程师
注册测绘师
质量工程师
岩土工程师
注册给排水
造价员考试
注册计量师
环保工程师
化工工程师
暖通工程师
咨询工程师
结构工程师
城市规划师
材料员考试
消防工程师
监理工程师
房地产估价
土地估价师
安全评价师
房地产经纪人
投资项目管理师
环境影响评价师
土地登记代理人
宝宝起名
缤纷校园
实用文档
入党申请
英语学习
思想汇报
作文大全
工作总结
求职招聘 论文下载 直播课堂
您现在的位置: 考试吧 > 计算机等级考试 > 计算机四级考试 > 复习资料 > 数据库工程师 > 正文

2015计算机等级考试四级数据库工程师复习(13)

来源:考试吧 2015-02-11 17:37:00 考试吧:中国教育培训第一门户 模拟考场
考试吧整理了“2015计算机等级考试四级数据库工程师复习”,提供给各位考生备考,更多考试资料请持续关注考试吧计算机等级考试频道!

  点击查看:2015计算机等级考试四级数据库工程师复习汇总

  第13章 数据库对象

  13.1 存储过程

  13.1.1 存储过程基本概念

  1、 在关系数据库中,SQL语言是应用程序和数据库管理之间的主要编程接口;

  2、 使用SQL语言编写代码时,可用两种方法存储和执行代码:

  (1) 在客户端存储代码,并创建向数据库管理系统发送SQL命令,并处理返回结果的应用程序;

  (2) 将这些发送的SQL语句存储在数据库管理系统中,这些存储在数据库管理系统中的SQL语句就是存储过程,然后再创建执行存储过程并处理返回结果的应用程序。

  3、 使用存储过程的好处:

  (1) 模块化程序设计:只需创建一次存储过程并将其存储在数据库中,以后就可以在应用程序中多次调用存储过程;

  (2) 提高性能:系统在创建存储过程时对其进行分析和优化,并在第一次执行时进行语法检查和编译,编译好的代码放入内存中,以后再执行此存储过程时,只需直接执行内存中的代码,从而提高代码的执行效率;

  (3) 减少网络流量:一个需要数百行SQL代码完成的操作现在只需一条执行存储过程的代码即可实现,因此,不再需要在网络中发送这些多语句;

  (4) 可作为安全机制使用:

  13.1.2 创建和执行存储过程

  1、 创建存储过程的SQL语句为:CREATE PROCEDURE,语法格式为:

  CREATE PROCEDURE 存储过程名

  [{@ 参数名 数据类型}[=default][OUTPUT]

  ][,…n]

  AS

  SQL语句[…n]

  其中:

  (1) default:表示参数的默认值。如果定义了默认值,则在执行存储过程时,可以不必指定该参数的值,默认值必须是常量或NULL;

  (2) OUTPUT:表明参数是输出参数,该选项的值可以返回给存储过程的调用者。

  2、执行存储过程的SQL语句是EXECUTE,语法格式:

  CREATE EXECUTE 存储过程名 [实参[,OUTPUT][,…n]]

  1、 执行有多个输入参数的存储过程时,参数的传递方式有两种:

  (1) 按参数位置传递值:指执行存储过程的EXEC语句中的实参的排列顺序必须与定义存储过程时定义的参数的顺序一致;

  (2) 按参数名传递值:指执行存储过程的EXEC语句中要指明定义存储过程时指定的参数的名字以及此参数的值,而不关心参数的定义顺序。

  2、 注意:

  (1) 在执行有输出参数的存储过程时,执行语句中的变量名的后边要加上OUTPUT修饰符;

  (2) 在调用有输出参数的存储过程时,与输出参数对应的是一个变量,此变量用于保存输出参数返回的结果;

  13.2 用户自定义函数

  13.2.1 基本概念

  1、 用户定义函数可以扩展数据操作的功能,它在概念上类似于一般的程序设计语言中定义的函数。

  13.2.2 创建和调用标量函数

  标量函数—返回单个数据值的函数;

  1、定义标量函数

  CREATE FUNCTION [拥有者名.] 函数名

  ([{@ 参数名[AS]标量数据类型[=default]}[,…n]])

  RETURNS 返回值类型

  [AS]

  BEGIN

  函数体

  RETURN 标量表达式

  END

  (1) 同存储过程一样,函数的参数也可以有默认值。

  (2) 标量表达式:指定标量函数返回的标量值。

  2、 调用标量函数:

  当调用标量函数时,必须提供至少由两部分组成的名称:函数拥有者名和函数名。可在任何允许出现表达式的SQL语句中调用标量函数,只要类型一致;

  13.2.3 创建和调用内嵌表值函数

  1、 创建内嵌表值函数,其语法为:

  CREATE FUNCTION [拥有者名.] 函数名

  ([{@ 参数名[AS]标量数据类型[=default]}[,…n]])

  RETURNS 返回变量 TABLE <表定义>

  [AS]

  BEGIN

  函数体

  RETURN

  END

  <表定义>::=({列定义|表约束}[,…n])

  2、调用多语句表值函数

  多语句表值函数的返回值是一个表,因此对多语句表值函数的使用也是放在SELECT语句的FROM子句中。

  13.3 触发器

  13.3.1 触发器基本概念

  1、 触发器是一种特殊的存储过程,其特殊性在于它不需要由用户来调用,而是当用户对表中的数据进行UPDATE、INSERT或DELETE操作时自动触发执行;

  2、 触发器常用于下列场合:

  (1) 完成比CHECK的约束更复杂的数据约束;

  (2) 为保证数据库性能而维护的非规范化数据;

  (3) 实现复杂的业务规则,可使业务的处理任务自动进行。

  13.3.2 创建触发器

  1、 创建触发器的语句:CREATE TRIGGER,语法为:

  CREATE TRIGGER 触发器名称

  ON {表名| 视图名}

  [WITH ENCRYPTION]

  {FOR |AFTER|INSTEAD OF}{[INSERT][,][DELETE][,][UPDATE]}

  AS

  [{IF UPDATE(column)…}]

  SQL语句

  (1) 触发器名称在数据库中必须是惟一的;

  (2) ON子句用于指定在其上执行触发器的表;

  (3) AFTER:指定触发器只有在引发的SQL语句中指定的操作都已成功执行,并且所有的约束检查也成功完成后,才执行此触发器,这种触发器称为后触发型触发器;

  (4) FOR:作用同AFTER;

  (5) INSTEAD OF:指定执行触发器而不是执行引发触发器执行的SQL语句,从而替代触发语句的操作,这种触发器称为前触发型触发器;

  (6) INSTERT、DELETE或UPDATE是引发触发器执行的操作,若同时指定多个操作,则各操作之间用逗号分隔;

  2、 创建触发器时,需要注意:

  (1) 在一个表上可以建立多个名称不同、类型各异的触发器,每个触发器可由三个操作引发;

  (2) 大部分Transact-SQL语句都可用在触发器中,但也有一些限制;

  (3) 在触发器定义中,可以使用IF UPDATE子句测试在INSERT和UPDATE语句中是否对指定字段有影响;

  (4) 通常不要在触发器中返回任何结果。

  3、 创建后触发型触发器

  使用FOR或AFTER选项定义的触发器为后触发的触发器,即只有在引发触发器执行语句中指定的操作都已完成执行,并且所有的约束检查也成功完成后,才执行的触发器;

  4、 创建前触发型触发器

  使用INSTEAD OF 选项定义的触发器为前触发型触发器,在该触发器中,指定执行触发器而不是执行引发触发器执行的SQL语句,从而替代引发语句的操作。

  13.4 查看、修改及删除对象

  13.4.1 查看对象

  对于创建好的存储过程、函数可通过企业管理器和查询分析器查看这些对象的代码;

  13.4.2 修改对象

  1、 修改存储过程:ALTER PROCEDURE

  ALTER PROC 存储过程名

  [{@参数名 数据类型}[=default][OUTPUT]][,…n]

  AS

  SQL语句[…n]

  修改与定义的语句基本一致,只将CREARE PROC 改成ALTER PROC;

  2、修改用户自定义函数:

  修改与定义的语句基本一致,只将CREARE FUNCTION 改成ALTER FUNCTION;

  3、修改触发器:

  修改与定义的语句基本一致,只将CREARE TRIGGER 改成ALTER TRIGGER;

  13.4.3 删除对象

  1、 删除存储过程:

  DROP PROCEDURE {存储过程名}[,…n];

  2、删除用户自定义函数

  DROP FUNCTION {[拥有者名.]函数名}[,…n]

  3、删除触发器

  DROP TRIGGER {触发器名}[,…n]

 

  相关推荐:

  各地2015年计算机等级考试报名时间汇总

  各地2015年上半年计算机等级考试费用汇总

  考试吧特别策划:2015年计算机等级考试报考指南

文章搜索
版权声明:如果计算机等级考试网所转载内容不慎侵犯了您的权益,请与我们联系800@exam8.com,我们将会及时处理。如转载本计算机等级考试网内容,请注明出处。
Copyright © 2004- 考试吧计算机等级考试网 All Rights Reserved 
中国科学院研究生院权威支持(北京)
在线模拟试题
考证通关杀器
考试最新资讯
一次通关技巧