PL/sql语法单元
1.字符集
- 所有大小写字母:包括A~Z和a~z。
- 数字:包括0~9.
- 空白字符:包括制表符、空格和回车符
- 其他常用英文符号
2.标识符
| 符号 | 说 明 | 符号 | 说 明 |
| + | 算数加或表示为整数 | - | 算数减或表示为负数 |
| * | 算数乘 | / | 算数除 |
| = | 关系等 | := | 赋值运算符 |
| < | 关系小于 | > | 关系大于 |
| <= | 关系小于等于 | >= | 关系大于等于 |
| != | 关系不等于(<>, ^=, ~=) | ; | 语句结束符 |
| ( | 括号运算符开始 | ) | 括号运算符结束 |
| /* | 多行注释开始 | */ | 多行注释结束 |
| << | 其实标签 | >> | 结束标签 |
| % | 游标属性指示符或代表任意个字符的通配符 | _ | 代表一个字符的通配符 |
| : | 主机变量指示符 | . | 表示从属关系符号 |
| ' | 字符串标示符 | " | 引证标示符 |
| -- | 单行注释符 | || | 字符串连接符号 |
| => | 位置定位符号 | ** | 幂运算符 |
- 数字类型:Binary_Integer,Pls_Interger,number
- 字符类型:Char,Nchar,Varchar2,Nvarchar2,varchar
- 日期/区间类型:Date,TimeStamp,Interval
- 行标识符:RowID,URowID
- 布尔类型:Boolean
- 原始类型:Raw,Long Raw
- Lob类型:Clob,Blob,Nclob,Bfile
- 记录类型:Record
- 集合类型:Table
注意:
- varchar2,char主要是用于存储来自数据库字符集的字符,而ncahar,nvarchar2用于存储来自国家字符集的字符串。
- RowID表示行的物理地址,而URowID既可以是行的物理地址,也可以是表示行的逻辑地址。
- Blob存放二进制数据,Clob,Nclob存放文本数据,而Bfile存储指向操作系统的指针。lob类型变量可以存储4GB的数据量。
- 记录类型:
前面介绍的数据类型都是标量数据类型,是系统预定义的。而复合类型,如记录类型,集合类型等需要用户自己定义。
- 变量的类型随参照的变量类型,数据库列表的类型,表结构的变化而变化
- 如果数据库表列中有NOT NULL 约束,%type,与%rowType返回的数据类型没有此限制。
6.变量与常量
- 每行只能定义一个变量;
- 如果加上一个关键字CONSTANT,则表示所定义的是一个常量 ,必须为它初始值;
- 如果定义变量时使用了NOT NULL关键字,则必须为变量赋初始值
- 如果变量没有赋初始值,则默认为null
- 使用DEFAULT 或“:=”为变量初始化
(2)变量的作用域
- EXCEPTION_INIT:告诉编译程序一个特定的错误号与程序中所声明的异常标识符关联起来
- RESTRICT_REFERENCES:告诉编译程序打包程序的纯度,对函数中可以使用的Sql语句和变量进行限制。
- SERIALLY_REUSEABLE:告诉PL/sql运行引擎时,在数据引用之间不要保持包级数据。
- AUTONOMOUS_TRANSCTION:告诉编译程序,改程序块为自制事务,即该事务的提交和回滚是独立运行的。
例如:
PL/sql语法单元的更多相关文章
- 【SQL】Oracle的PL/SQL语法及其拓展数据类型总结
PL/SQL语法 PL/SQL程序由三部分组成,声明部分.执行部分.异常处理部分. 模板: DECLARE /*变量声明*/ BEGIN /*程序主体*/ EXCEPTION /*异常处理部分*/ E ...
- PL/SQL编程基础(一):PL/SQL语法简介(匿名PL/SQL块)
PL/SQL PL/SQL是Oracle在关系数据库结构化查询语言SQL基础上扩展得到的一种过程化查询语言. SQL与编程语言之间的不同在于,SQL没有变量,SQL没有流程控制(分支,循环).而PL/ ...
- SQL PL/SQL语法手册
SQL PL/SQL语法手册 目 录 第一部分 SQL语法部分 3 一. CREATE TABLE 语句 3 二. CREATE SEQUENCE语句 5 三. CREATE VIEW语句 6 ...
- PL/SQL语法
PL/SQL语法 由于pl/sql是编译后执行的,而sql语句是未经编译的,因此pl/sql语句在执行速度上更快,同时也减少了客户机和服务器的传输. 基本结构 DECLARE 声明变量.常量.用户定义 ...
- oracle PL/SQL语法基础
目录 数据类型 定义变量 PL/SQL控制结构 参考资料 Oracle10g数据类型总结 PL/SQL之基础篇 数据类型 学习总结 字符类型 char.nchar.varchar.nvarchar:有 ...
- oracle学习笔记(十五) PL/SQL语法结构以及使用
PL/SQL 简介 PL/SQL 是过程语言(Procedural Language)与结构化查询语言(SQL)结合而成的编程语言. PL/SQL 是对 SQL 的扩展. 支持多种数据类型,如大对象和 ...
- PL/SQL学习笔记程序单元
一:程序单元组成 一个PL/SQL程序单元主要包括三部分: 声明与定义部分:声明变量.常量.类型等:定义过程.函数等: 执行部分:执行PL/SQL语句:调用过程.参数:处理游标等: 异常处理部分:处理 ...
- PL/SQL学习笔记之基本块格式与语法
一:PL/SQL程序块 PL/SQL是一种块结构的语言,一个PL/SQL程序就是一个 代码逻辑块. PL/SQL程序由三部分构成: 1 声明 部分 使用关键字DECLARE开头,它是一个可选的部分,用 ...
- 每周一书《Oracle 12 c PL(SQL)程序设计终极指南》
本周为大家送出的书是<Oracle 12 c PL(SQL)程序设计终极指南>,此书由机械工业出版社出版, 孙风栋,王澜,郭晓惠 著. 内容简介: <Oracle 12c PL/SQ ...
随机推荐
- 反射调用方法时的两种情况,走get set和不走get set
@Test public void test1() throws Exception{ //获取User类 Class class1=Class.forName("cn.jbit.bea ...
- IO/ACM中来自浮点数的陷阱(收集向)
OI/ACM中经常要用到小数来解决问题(概率.计算几何等),但是小数在计算机中的存储方式是浮点数而不是我们在作数学运算中的数,有精度的限制. 以下以GUN C++为准,其他语言(或编译器)也差不了多少 ...
- easyui datagrid将表头的checkbox不显示(隐藏)
<script type="text/javascript"> $(function(){ $("#dg").datagrid({ url:&quo ...
- android混合开发,webview的java与js互操作
android原生应用,用webview加载应用中的网页,并且java代码与js代码可以互相操作. 这是混合开发的基石,最基本也最重要的东西,实验代码在这里. 概括说说—— java调js:调用web ...
- spring事物配置,声明式事务管理和基于@Transactional注解的使用
http://blog.csdn.net/bao19901210/article/details/41724355 http://www.cnblogs.com/leiOOlei/p/3725911. ...
- (1) 第一章 Java体系结构介绍
1.网络带来的挑战和机遇 (1).挑战一: 网络包含的设备越来越广泛, 硬件体系不同, 操作系统不同,用途不同. java解决办法: 通过创建与平台无关的程序来解决这个问题.一个java程序可以不需要 ...
- Shell基本功能&配置&Oh-My-Zsh
http://blog.csdn.net/yangcs2009/article/details/45720193
- gitlab open ssl
cd /home/git/gitlab/ sudo -u git -H vi config/gitlab.yml sudo -u git -H vi /home/git/gitlab-shell/co ...
- [资源] Open source packages on SLAM
OpenSLAM http://openslam.org/ Most main stream open source slam resource can be found on OpenSLAM, w ...
- 为ssh增加选项
在使用ssh的时候,可以看到ssh有很多功能,什么-o , -e等等.如下图 需求,想要给ssh增加一个参数的功能.比如说我现在的需求就是执行ssh的时候可以增加一个选项,给我每次ssh的操作搭一个标 ...