Oracle pl/sql编程 2---plsql变量与常量
来源:互联网 发布:mac快捷键缩小窗口 编辑:程序博客网 时间:2024/06/05 18:47
PL/SQL中的变量与常量
PL/SQL 标识符
1:变量必须以字母A-Z开头
2:Oracle标示符不区分大小写
3:变量名长度不能超过30个字符
4:标识附中不能包含减号“-”和空格(注意是减号而不是下划线)
5:标识符不能是SQL关键字
举列:
V_Name Varchar2(20)合法2006_YEAR VARarchar2(20)非法,第一个字符为数字User VARarchar2(20)非法,User是sql关键字Year-month VARarchar2(20)非法,有减号‘”-“
标量变量
pl/sql中标量用来存储一个单独的值
复合类型的变量用来存储多个值(列入数据库中的一行记录)
标量变量里面包含了一个单独的变量,其数据类型除了包括SQL中的数据类型之外pl/sql还有几种特别的数据类型
对于pl/sql中的数字类型,除了number 以外还有PLS_INTEGER和BINARY_INTEGER
PLS_INTEGER
PLS_INTEGER是专为pl/sql程序使用的数据烈性,它不可以在创建表的列中使用,PLS_INTEGER数据类型表示一个有符号的整数,表示的范围是-2^31到2^31.
PLS_INTEGER具有比number变量更小的范围,因此会占用更少的内存。PLS_INTEGER能够更有效地利用CPU,因此其运算可以比NUMBER和BINARY_INTEGER更快
BINARY_INTEGER
BINARY_INTEGER与PLS_INTEGER相似,比number变量需要的内存少。PLS_INTEGER和BINARY_INTEGER的区别是:PLS_INTEGER的运算发生溢出时,常会出发异常,但是BINARY_INTEGER运算发生溢出时,如果可以指派给一个Number变量(没有超出number的精度范围)则不会出发异常。
BINARY_INTEGER还具有几个子类型,如NATURAL表示自然数,positive表示整数。从表示范围来看BINARY_INTEGER是numberde 子集。
在pl/sql中可以使用boolean数据类型,它不能够在sql中作为创建表的列使用。boolean的值有trure,false,null。通常用来表示经过验证的一个条件或一组条件的结果
declare --定义存储日期和时间值的变量 out_date date; --定义存储字符串的变量 out_text varchar2(50); --定义存储数字值的变量 out_num binary_integer; --定义存储布尔类型的变量 out_boolean boolean; begin --pl/sql程序执行部分 end;
定义常量
定义常量要在常量名前面加商constant 关键字
--定义一个常量pi 用":="赋值 pi constant number(9):=3.1415926;
4 1
- Oracle pl/sql编程 2---plsql变量与常量
- Oracle pl/sql编程 3---plsql为常量与变量赋值
- Oracle-32-初识PL/SQL程序&PL/SQL变量&PL/SQL常量
- Oracle pl/sql编程 4---plsql块中的sql语句
- Oracle PL/SQL变量、常量、流程控制、循环语句
- Oracle pl/sql编程 15---游标变量
- pl/sql变量和常量
- Oracle pl/sql编程 5---plsql中的%type
- Oracle pl/sql编程 6---plsql中的%rowtype
- Oracle PL/SQL编程(2)
- PLSQL编程2:PLSQL变量
- 【Oracle】Oracle PL/SQL编程简介2
- PL/SQL(plsql) 无法连接到oracle
- Oracle PL/SQL编程
- oracle pl/sql 编程
- oracle pl/sql 编程
- ORACLE PL/SQL编程
- Oracle PL/SQL编程
- 关于JDK在windows环境下的安装与环境变量配置的问题
- 菜鸟学算法之POJ1636 Prison Rearrangement
- 第十九篇:学习好C++需要的读的书籍
- 2D Conforming Triangulations
- Ajax异步加载问题
- Oracle pl/sql编程 2---plsql变量与常量
- Linux 线程 动画
- 快速删除docker中的容器
- 非递归快速排序
- 巴什博奕
- 毕业生自传-9(落地生根北漂人)
- JS基础
- require头域
- python保存文件UnicodeEncodeError以及reload(sys)后print失效问题