Oracle之PL/SQL简介(一)

1、PL/SQL简介

PL/SQL是过程语言( Procedural Language )与结构化查询语言(SQL)结合而成的编程语言。PL/SQL的特点如下:
1、PL/SQL是对SQL的扩展;
2、支持多种数据类型,可使用条件和循环等控制语句;
3、可用于创建存储过程,触发器和程序包,给SQL语句的执行添加程序逻辑;
4、与Oracle服务器和Oracle工具紧密继承,具备可移植性,灵活性和安全性。
5、在PL/SQL中可以使用数据操纵命令、事务控制命令、游标控制、SQL函数和SQL运算符。用户把PL/SQL块整个发送到服务器端,Oracle服务器端编译、运行,再把结果返回给用户。
6、可移植性:可运行在任何操作系统和平台上的Oracle数据库
7、更佳的性能。PL/SQL经过编译执行.
8、安全性。可以通过存储过程限制用户对数据的访问。
9、与SQL紧密继承,简化数据处理,支持所有SQL数据类型,支持null值,支持 %type 和 %rowtype属性类型

2、PL/SQL块简介

PL/SQL块是构成PL/SQL程序的基础单元,在逻辑上相关的声明和语句组合在一起。PL/SQL分为三部分:声明部分、可执行部分和异常处理部分。

declare
  declarations;
begin
  executable statements;
  exception
    handlers;
end;

3、标识符

使用标识符来为PL/SQL程序中的常量、变量、游标等命名。
标识符可以由字母、数字、美元符号($)、下划线(_)和数字符号(#)组成,以字母开头。如果有其它特殊字符要使用双引号括起来。最长不超过30个英文字母的长度。

4、数据类型

PL/SQL数据类型不仅支持Oracle SQL中的数据类型,还有自身自带的数据类型

1、数值类型

number(p,s) 存放各种数字类型的数据
pls_integer.binary_integer:数值类型,只能存放整数

2、字符串类型

varchar2(len):变长字符串类型,存放字符串类型数据
char(len):定长字符串类型
注:sql中的char最大字节长度为2000字节,plsql中的char最大字节长度为32767字节
sql中的varchar2最大字节长度为4000字节,plsql中的varchar2最大字节长度为32767字节

3、日期类型

date:日期类型

4、%type 类型

%type:它的类型是取数据库表中某一字段的类型,作为变量类型。写法:
表名.列名%type; --变量的类型
emp.ename%type 等同于 varchar2(10)

5、record 类型

普通的数据类型声明的变量,只能存放一个值,记录类型是存放一组值,它使用前需要去定义一个确定类型

1、记录类型的定义:
type type_name is record(
  变量名 数据类型,
  变量名 数据类型,
  变量名 数据类型
)

type_name:记录类型名称

type emp_type is record(
  dname varchar2(10),
  job emp.job%type,
  sal emp.sal%type
);
2、`声明一个记录类型变量

变量名 记录类型;
v_emp emp_type;

3、给记录类型赋值

变量名称.属性名;
v_emp.ename:=‘张三’;

6、%rowtype类型

%rowtype:它是%type和record类型的结合
表名%rowtype;
dept%rowtype;
v_dept dept%rowtype;

5、变量和常量

变量:它是存放数据的,它里面存放的值是可以根据程序需要改变的。变量的声明语法:
变量名 数据类型 [not null] [:=默认值]
注: := 在plsql中是赋值符号

declare
  v_n number(10):=1;
begin
  v_n:=10;
end;

常量:它存储数据,一旦给它赋值,它的值就不可以改变
常量名 constant 数据类型:=默认值;
注: &:输入符号

declare
  --声明一个number类型的变量
  v_n number(10);
begin
  --从键盘输入一个数字存入变量v_m中
  v_n:=&请输入一个数字;
  --把变量v_m的值输出在控制台上
  dbms_output.put_line('v_n的值是:'||v_n);
end;

你可能感兴趣的:(oracle,sql,数据库)