SQL PL基本概念
--声明变量
--1.语法:
--declare <varible-name> <data-type> <default-constant>默认不变
--declare 变量名 数据类型 常量值
--2.举例:
--declare x,y int default 0; //定义一个x,y的变量,默认值为0
--declare myname varchar(10);
--declare z decimal(9,2) default 0.0;
--3.赋值:
--方法一:使用set语句
--方法二:使用values into语句
--方法三:使用select into语句
--set x=10;
--set y=(select sum(c1) from T1);
--values 10 into x;
--select sum(c1) into y from T1;
--4.回话全局变量
--DB2支持会话全局变量。它与一个特定的会话相关联,它对于这个会话中的每个存储过程都是全局的
--会话全局变量是在存储过程之外声明的。
--语法:
--create variable var_name datatype [default value]
--create 变量名 数据类型 【默认值】
--create varible myvar interger default 0;
--数组
--DB2从9.5开始支持数组,可以在存储过程和应用程序中使用数组,但不能再定义表的时候使用数组
--1.定义数组
--语法:create type <array-type-name> as <data-type> array[integer-constant]
--create type 数组类型名 as 数据类型 array[整型常量值]
--create type nar as integer array[100]
--create type myname as varchar(30) array[];
--声明数组
--declare <array-name> <array-type-name>
--declare mynumber nar;
--declare namearr mynames;
--declare nameArr mynames;
--赋值
--使用set语句
--使用values into语句
--使用select into语句
--使用ARRAR构造函数
--操作数组的函数
--array_delete 删除数组元素
--trim_array 从右开始删除指定数目个元素
--array_first 返回数组中第一个元素
--array_last 返回数组中最后一个元素
--array_next 返回数组下一个元素
--unnest 将数组转换为表
--连接数据库
--connect to sanple!
--定义数组
--create type intarray as integer array[10]
--创建存储过程
--create procedure test()
--begin
--declare testarr intarray;
--赋值1:set testarr=array[1,2,3,4,5,6,7,8,9,10];
--赋值2:values 1 into testarr[1], values 2 into testarr[2]
--赋值3:set testarr[1]=1
--调用
--将上面的代码保存为c:\test.sql,然后在DB2命令窗口执行如下命令
--db2 -td! -vf c:\test.sql
SQL PL基本概念的更多相关文章
- Oracle和MySql的分页查询区别和PL/SQL的基本概念
Oracle和MySql的分页查询区别: Oracle的分析查询,之前Oracle的分页是使用伪列 ROWNUM 结合子查询实现,mysql的分页更简单,直接使用 LIMIT 关键字就可以实现 ...
- SQL PL/SQL语法手册
SQL PL/SQL语法手册 目 录 第一部分 SQL语法部分 3 一. CREATE TABLE 语句 3 二. CREATE SEQUENCE语句 5 三. CREATE VIEW语句 6 ...
- SQL & PL/SQL 模块总结
SQL 1. 各种function 2. merge 3. connect by PL/SQL 1. pl/sql 寄出 2. 游标 3. procedure 4. function 5. packa ...
- sql: PL/SQL proc
A PL/SQL block has the following structure: [DECLARE declaration_statements ] BEGIN executable_state ...
- SQL Server 死锁概念和分析
锁的概念 锁是什么 锁是数据库中在并发操作情形下保护资源的机制.通常(具体要看锁兼容性)只有锁的拥有者才能对被锁的资源进行操作,从而保证数据一致性. 锁的概念可分为几部分 锁资源(锁住什么) 锁模式( ...
- SQL Server Alwayson概念总结
一.alwayson概念 “可用性组” 针对一组离散的用户数据库(称为“可用性数据库” ,它们共同实现故障转移)支持故障转移环境. 一个可用性组支持一组主数据库以及一至八组对应的辅助数据库(包括一个主 ...
- SQL Server“复杂”概念之理解
用惯了Oracle的人,接触SQL Server中的概念时,会觉得比较难理解,甚至感觉有点“绕”,这是因为Oracle中将某些其他数据库中存在的概念给简化了,这里就拿两个最常见的概念来举例说明:1.s ...
- Sql Server 游标概念与实例
引言 先不讲游标的什么概念,看如下Sql Server2008 图例: 需求:两张表的O_ID是一一对应的,现在求将加薪的工资+原来的工资=现在的工资,也就是O_Salary=O_Salary+A_S ...
- sql/pl 安装并连接Oracle数据库
1,首先,先下载pl/sql devloper 安装包.下载对应版本的安装包 下载地址 https://www.allroundautomations.com/bodyplsqldevreg.htm ...
随机推荐
- 2015_WEB页面前端工程师_远程测题_东方蜘蛛_1
请使用HTML+CSS实现如下效果: 1. 使用CSS Sprites,实现如图1效果,素材图片为: icons.png: 2. 使用脚本语言验证邮箱.密码的必填以及邮箱的合法性: 若验证失败,则出现 ...
- nutch 1.7 导入 eclipse
开发环境建议:ubuntu+eclipse (windows + cygwin + eclipse不推荐) 第一步:下载http://archive.apache.org/dist/nutch/从上述 ...
- bzoj 1096: [ZJOI2007]仓库建设 斜率優化
1096: [ZJOI2007]仓库建设 Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 2242 Solved: 925[Submit][Statu ...
- 在DJANGO的类视图中实现登陆要求和权限保护
以前接触的是基于函数的保护,网上材料比较多. 但基于类视图的很少. 补上! Decorating class-based views 装饰类视图 对于类视图的扩展并不局限于使用mixin.你也可以使用 ...
- jsp的url后跟中文参数传参出现乱码
①重新编码:String urlParam= request.getParameter("urlParam"); urlParam= new String(urlParam.ge ...
- 居然还有WM_TIMECHANGE(只在用户手动改变系统时间时才会产生作用)
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms ...
- truncate 空间不释放问题
SQL> set linesize 200 SQL> select segment_name, sum(bytes / 1024 / 1024/1024) from dba_segment ...
- 【HDOJ】前三百留念
4个月不到的时间,终于刷到了HDOJ前三百.肯定还不够,好多基本的算法还不了解.还得继续学习.以此留念,假期目标是前一百.
- HashMap循环遍历方式及其性能对比
主要介绍HashMap的四种循环遍历方式,各种方式的性能测试对比,根据HashMap的源码实现分析性能结果,总结结论. 1. Map的四种遍历方式 下面只是简单介绍各种遍历示例(以HashMap为 ...
- ServiceStack.Redis 之 IRedisTypedClient
IRedisTypedClient IRedisTypedClient类相当于IRedicClient的强类型版,其方法与属性大多数与IRedisClient类似. 它支持在Redis中使用Linq查 ...