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 ...
随机推荐
- 修改远程桌面端口号.bat
@color 0A @title 修改远程桌面端口号 by wjshan0808 @echo off echo 请输入端口号 set /p port= reg add "HKLM\SYSTE ...
- 原生的on事件代理
<script> // jQuery $('.el').on('event', function() { }); // 原生方法 [].forEach.call(document.quer ...
- 原生js与css3结合的电风扇
最近学习了css3,就琢磨做些东西练练手,下面是自己写的一个电风扇,使用了原生js中的定时器和css3的一些属性 <!doctype html> <html lang="e ...
- Git使用方法
一:Git是什么? Git是目前世界上最先进的分布式版本控制系统. 二:SVN与Git的最主要的区别? SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以 ...
- winform下的智能提示框
winform下的智能提示框 最近在搞winform的程序,接触到有些可能以后还会用到的功能,所以写到博客园里去,第一可以加深自己的印象,第二可以在以后再遇到同样问题的时候忘记了可以马上回来看看,第三 ...
- MergeSort(归并排序)算法Java实现
归并排序 归并排序 (merge sort) 是一类与插入排序.交换排序.选择排序不同的另一种排序方法.归并的含义是将两个或两个以上的有序表合并成一个新的有序表.归并排序有多路归并排序.两路归并排序 ...
- 编译libjpeg库
最近在写车牌识别软件,需要用到BMP转成JPG的功能,自然就想到借助libjpeg来实现 OS: win7 64位 编译器: VS2008 1. 下载源代码下载地址:http://www.ijg.or ...
- 【转】PowerShell入门(九):访问.Net程序集、COM和WMI
转至:http://www.cnblogs.com/ceachy/archive/2013/02/28/PowerShell_DotNet_COM_WMI.html PowerShell可以设计的大而 ...
- org.apache.hadoop.security.AccessControlException: Permission denied:
org.apache.hadoop.security.AccessControlException: Permission denied: user=xxj, access=WRITE, inode= ...
- 机器学习实战-边学边读python代码(5)
def classifyNB(vec2Classify, p0Vec, p1Vec, pClass1): p1 = sum(vec2Classify * p1Vec) + log(pClass1 ...