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 ...
随机推荐
- ARCI--做事情的重要方法论
很多朋友都可能碰到这样的情况,有一个任务曾经开会讨论过,目标,时间,参与人都有提到,但是最终就是不了了之,没有下文了,而且后面想起来,要追究责任的时候,发现似乎都没有责任,无从追究.如果这种情况出现, ...
- C API向MySQL插入批量数据的快速方法——关于mysql_autocommit
MySQL默认的数据提交操作模式是自动提交模式(autocommit).这就表示除非显式地开始一个事务,否则每个查询都被当做一个单独的事务自动执行.我们可以通过设置autocommit的值改变是否是自 ...
- 深入Spring之web.xml
针对web.xml我打算从以下几点进行解析: 1.ContextLoaderListener: 启动Web容器时,自动装配ApplicationContext的配置信息. 2.RequestConte ...
- activiti入门2流程引擎的API和服务基础
RepositoryService : 管理和控制发布包和流程定义(包含了一个流程每个环节的结构和行为)的操作 除此之外,服务可以 查询引擎中的发布包和流程定义. 暂停或激活发布包,对应全部和特定 ...
- bzoj1306
非常好的一道搜索题首先没有别的好办法就只能搜,基于对称性我只要搜对角线上半部分即可然后有些惯用的剪枝啦什么的,具体见程序然后代码很短,然后TLE了(但好像也有人过了)然后就不知道怎么优化了,看到CLJ ...
- POI做题记录:第二届POI
Trees Memory limit: 32 MB Trees occur very often in computer science. As opposed to trees in nature, ...
- asp 数组
定义简单数组 有两种方法在asp中定义和初始化数组,让我们看看每种的例子: 方法一:MyArray = Array("Jan","Feb","Mar& ...
- [转]linux的ulimit各种限制之深入分析
这是一篇非常好的文章,对ulimit的各个限制参数讲得非常透彻.原文链接:http://home.lupaworld.com/home-space-uid-56821-do-blog-id-23281 ...
- 南京Uber优步司机奖励政策(1月18日~1月24日)
滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...
- 【Android - V】之DrawerLayout的使用
DrawerLayout是Android V4包中的一个布局控件,用来实现一个抽屉样式的布局. DrawerLayout通过设置子视图的layout_gravity来决定子视图停靠在屏幕的哪个边缘外侧 ...