栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

数据库编程之过程化SQL

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

数据库编程之过程化SQL

过程化SQL的块结构 过程化SQL

SQL的扩展
增加了过程化语句功能
基本结构是块
块之间可以互相嵌套
每个块完成一个逻辑操作

过程化SQL块的基本结构

1. 定义部分
DECLARE 变量、常量、游标、异常等
定义的变量、常量等只能在该基本块中使用
当基本块执行结束时,定义就不再存在
2. 执行部分

BEGIN
   	SQL语句、过程化SQL的流程控制语句
 EXCEPTION
 	 异常处理部分        		
 END;
变量和常量的定义 1. 变量定义

变量名 数据类型 [[NOT NULL]:=初值表达式]或
变量名 数据类型 [[NOT NULL] 初值表达式]

2. 常量定义

常量名 数据类型 ConSTANT :=常量表达式
常量必须要给一个值,并且该值在存在期间或常量的作用域内不能改变。如果试图修改它,过程化SQL将返回一个异常

3. 赋值语句

变量名称 :=表达式

流程控制 过程化SQL功能

1.条件控制语句
2.循环控制语句
3.错误处理

1. 条件控制语句

IF-THEN,IF-THEN-ELSE和嵌套的IF语句
(1)IF condition THEN
Sequence_of_statements;
END IF;
(2)IF condition THEN
Sequence_of_statements1;
ELSE
Sequence_of_statements2;
END IF;
(3)在THEN和ELSE子句中还可以再包含IF语句,即IF语句可以嵌套

2. 循环控制语句

LOOP,WHILE-LOOP和FOR-LOOP
(1)简单的循环语句LOOP
LOOP
Sequence_of_statements;
END LOOP;
多数数据库服务器的过程化SQL都提供EXIT、BREAK或
LEAVE等循环结束语句,保证LOOP语句块能够结束
(2)WHILE-LOOP
WHILE condition LOOP
Sequence_of_statements;
END LOOP;
每次执行循环体语句之前,首先对条件进行求值
如果条件为真,则执行循环体内的语句序列
如果条件为假,则跳过循环并把控制传递给下一个语句
(3)FOR-LOOP
FOR count IN [REVERSE] bound1 … bound2 LOOP
Sequence_of_statements;
END LOOP;

3. 错误处理

如果过程化SQL在执行时出现异常,则应该让程序在产生异常的语句处停下来,根据异常的类型去执行异常处理语句
SQL标准对数据库服务器提供什么样的异常处理做出了建议,要求过程化SQL管理器提供完善的异常处理机制
欢迎大家加我微信交流讨论(请备注csdn上添加)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/693421.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号