1、简单公式
DECLARE
BEGIN
END;
2、变量
DECLARE
长 NUMBER;
宽 NUMBER;
周长 NUMBER;
BEGIN
--变量赋值
长:=3;
宽:=4;
--周长计算
周长:=(长+宽)*2;
--输出
DBMS_OUTPUT.PUT_LINE('周长=:'||周长);
END;
--定义变量 变量名称用 V_ 开头
DECLARE
V_LONG NUMBER;
V_WIDE NUMBER;
V_ZHOUCHANG NUMBER;
BEGIN
--变量赋值
V_LONG:=3;
V_WIDE:=4;
--周长计算
V_ZHOUCHANG:=(V_LONG+V_WIDE)*2;
--输出
DBMS_OUTPUT.PUT_LINE(V_ZHOUCHANG);
END;
3.变量初始值
--定义变量可以赋初始值
DECLARE
V_LONG NUMBER:=3;
V_WIDE NUMBER:=4;
V_ZHOUCHANG NUMBER;
BEGIN
--周长计算
V_ZHOUCHANG:=(V_LONG+V_WIDE)*2;
--输出
DBMS_OUTPUT.PUT_LINE(V_ZHOUCHANG);
END;
--定义变量可以赋初始值,并且变量是可变的
DECLARE
V_LONG NUMBER:=3;
V_WIDE NUMBER:=4;
V_ZHOUCHANG NUMBER;
BEGIN
V_LONG :=6;
--周长计算
V_ZHOUCHANG:=(V_LONG+V_WIDE)*2;
--输出
DBMS_OUTPUT.PUT_LINE(V_ZHOUCHANG);
END;
4.CONSTANT常量定义
--CONSTANT常量定义 常量必须赋初始值,且常量不可变
DECLARE
V_LONG CONSTANT NUMBER:=3;
V_WIDE NUMBER:=4;
V_ZHOUCHANG NUMBER;
BEGIN
--周长计算
V_ZHOUCHANG:=(V_LONG+V_WIDE)*2;
--输出
DBMS_OUTPUT.PUT_LINE(V_ZHOUCHANG);
END;
5.字符、日期变量
--字符(注:必须写出字段长度)、日期类型的变量
DECLARE
V_NAME VARCHAR2(30):= '张三';
V_DATE DATE := SYSDATE;
BEGIN
--输出
DBMS_OUTPUT.PUT_LINE(V_NAME);
END;
6.select into 隐式游标
-- select into 隐式游标 (表里面的某个字段的某个值取出来,放到变量里)
DECLARE
V_NAME VARCHAR2(100);
V_ID NUMBER;
BEGIN
SELECT ENAME,ID INTO V_NAME,V_ID FROM TEST WHERE ID=1;
DBMS_OUTPUT.PUT_LINE('输出V_NAME的内容 : '||V_NAME);
DBMS_OUTPUT.PUT_LINE('输出V_ID的内容 : '||V_ID);
DBMS_OUTPUT.PUT_LINE(V_NAME||'此处是拼接'||V_ID);
END;
-- 隐式游标特性:只能返回一条数据,返回多条或者没有数据都会报错。怎么防止报错:加聚合函数,但工作中不允许使用
DECLARE
V_NAME VARCHAR2(100);
V_ID NUMBER;
BEGIN
SELECT MAX(ENAME),MAX(ID) INTO V_NAME,V_ID FROM TEST;
DBMS_OUTPUT.PUT_LINE(V_NAME);
DBMS_OUTPUT.PUT_LINE(V_ID);
DBMS_OUTPUT.PUT_LINE(V_NAME||'此处是拼接'||V_ID);
END;
7、%type/%rowtype 定义数据类型
--%type引用数据库中的某列数据类型或某个变量的数据类型
--DECLARE V_NAME 表名称.字段%type ;
DECLARE
V_NAME TEST.ENAME%type;
BEGIN
SELECT ENAME INTO V_NAME FROM TEST WHERE ID=1;
DBMS_OUTPUT.PUT_LINE(V_NAME);
END;
--%rowtype 引用数据库中的一行(所有字段)作为数据类型
--DECLARE V_NAME 表名称%rowtype ;