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 ...
随机推荐
- QSplashScreen开机画面(不断的repaint)
QApplication a(argc, argv); QPixmap pixmap(":/Image/start.png");//绑定启动图片 QSplashScre ...
- 利用ROWID 快速更新单表记录
-----对于普通表 实现: UPDATE T_PM_DEPOSIT_HIS b SET flag = SUBSTR( flag, 1, 8 )||'4'|| CASE WHEN term <= ...
- 创办支持多种屏幕尺寸的Android应用
创建支持多种屏幕尺寸的Android应用 Android涉及各种各样的支持不同屏幕尺寸和密度的设备.对于应用程序,Android系统通过设备和句柄提供了统一的开发环境,大部分工作是校正每一个应用程序的 ...
- 查找IP来源
通过调用淘宝IP库获取IP归属地,脚本如下: #!/usr/bin/env python # -*- coding: utf-8 -*- import urllib import json impor ...
- C#中的四舍五入算法
最近在产品开发过程中遇到一个问题,就是在对数值进行截取,例如说保留两位小数时,最终得到的结果跟预期的在某些情况下会产生差异,这个差异的表现就是最后一位与预期的不一致,也就是说在"四舍五入&q ...
- maya绝招(21--40)
第21招 将Outliner分成两个 在该视图中如果元素很多的时候,会觉得Outliner不够用,这个时候拖动下侧的底框,就可以分成两栏,这样选择就省事多了. 第22招 运用选择区域,快速选择物体 在 ...
- HDOJ(HDU) 2519 新生晚会(组合公式)
Problem Description 开学了,杭电又迎来了好多新生.ACMer想为新生准备一个节目.来报名要表演节目的人很多,多达N个,但是只需要从这N个人中选M个就够了,一共有多少种选择方法? I ...
- POJ 2260(ZOJ 1949) Error Correction 一个水题
Description A boolean matrix has the parity property when each row and each column has an even sum, ...
- Error, some other host already uses address
rhel 5.9,在修改完网卡配置信息重启网卡之后提示如下无法激活网卡: Error, some other host already uses address 确认配置的IP地址是没有在用的,解决办 ...
- highcharts动态获取数据生成图表问题
动态获取数据说白点就是从后台传值到前台,前台把这些值赋值给x轴与y轴(这里指的是你X轴与Y轴都是变化的数据,如果你的X轴是固定的,像时间等等的那就另说). 柱状图的动态传值: //获取后台数据 va ...