1、简单SQL语句,HellWorld示例

--输出信息

begin

  dbms_output.put_line('Oracle Hello World!');

end;

 

2、变量的定义、使用

--定义变量

declare

  sName varchar2(20);

begin

  sName := 'jack';

  dbms_output.put_line(sName);

end;

  

--常用类型

declare

    sNum number(1);

    sCount binary_integer := 0;

    sSal number(7, 2) := 5000.00;

    sDate date := sysdate;

    sPI number(3, 2) := 3.14;

    sValid boolean := true;

    sName varchar2(20) := 'Jackson';

begin

    dbms_output.put_line('sName:' || sName);  

    dbms_output.put_line('sCount:' || sCount);  

    dbms_output.put_line('sSal:' || sSal);

    dbms_output.put_line('sDate:' || sDate);

    dbms_output.put_line('sPI:' || sPI);

    --dbms_output.put_line('sValid:' || sValid);

    dbms_output.put_line('sName:' || sName);

end;

 

--定义Table变量类型

declare 

  type type_table_emp_empno is table of emp.empno%type index by binary_integer;

  empnos type_table_emp_empno;

begin

  empnos(0) := 7369;

  empnos(2) := 6789;

  empnos(-1) := 6543;

  dbms_output.put_line(empnos(-1));

end;

 

--定义record变量类型

declare

  type type_record_dept is record (

       deptno dept.deptno%type,

       dname dept.dname%type,

       loc dept.loc%type

  );

  temp type_record_dept;

begin

  temp.deptno := 56;

  temp.dname := 'software';

  temp.loc := 'gz';

  dbms_output.put_line(temp.deptno || ' ' || temp.dname  || ' ' || temp.loc);

end;

 

--使用rowtype声明record变量

declare

  temp dept%rowtype;

begin

  temp.deptno := 57;

  temp.dname := 'it';

  temp.loc := 'sz';

  dbms_output.put_line(temp.deptno || ' ' || temp.dname  || ' ' || temp.loc);

end;

 

--sql语句完成变量赋值

declare

  v$sal emp.sal%type;

  v$ename emp.ename%type;

begin

  select sal, ename into v$sal, v$ename from emp where rownum = 1;

  dbms_output.put_line(v$sal || ' ' || v$ename);

end;

 

--sql语句完成rowtype变量赋值

declare

  v_row_emp emp%rowtype;

begin

  select * into v_row_emp from emp where empno = 7698;

  dbms_output.put_line(v_row_emp.sal || ' ' || v_row_emp.ename);

end;

 

--sql语句完成变量插入数据

create table dept2 as select * from dept;

declare

   deptno dept.deptno%type := 57;

   dname dept.dname%type := 'software';

   loc dept.loc%type := 'gz';

begin

    insert into dept2 values(deptno, dname, loc);

      commit;

end;

select * from dept2;

Oracle笔记 六、PL/SQL简单语句块、变量定义的更多相关文章

  1. oracle pl/sql简介、块、过程

    pl/sql语言是oracle在sql上扩展的语言.1 过程.函数.触发器是在pl/sql编写2 过程.函数.触发器是在oracle中3 pl/sql的语句可以在java中直接调用 简单介绍 在sql ...

  2. oracle数据库之PL/SQL 块结构和组成元素

    一.PL/SQL 块 (一)PL/SQL 程序由三个块组成,即声明部分.执行部分.异常处理部分 PL/SQL 块的结构如下: 1.DECLARE /* 声明部分: 在此声明 PL/SQL 用到的变量, ...

  3. 每周一书《Oracle 12 c PL(SQL)程序设计终极指南》

    本周为大家送出的书是<Oracle 12 c PL(SQL)程序设计终极指南>,此书由机械工业出版社出版, 孙风栋,王澜,郭晓惠 著. 内容简介: <Oracle 12c PL/SQ ...

  4. Oracle数据库之PL/SQL程序设计基础

    PL/SQL程序设计基础 一.PL/SQL块结构 前边我们已经介绍了PL/SQL块的结构,再来回顾一下: DECLARE /* * 声明部分——定义常量.变量.复杂数据类型.游标.用户自定义异常 */ ...

  5. Oracle数据库之PL/SQL程序设计简介

    PL/SQL程序设计简介 一.什么是PL/SQL? PL/SQL是 Procedure Language & Structured Query Language 的缩写. ORACLE的SQL ...

  6. Oracle数据库之PL/SQL程序基础设计

    一.PL/SQL块结构 前边我们已经介绍了PL/SQL块的结构,再来回顾一下: DECLARE /* * 声明部分——定义常量.变量.复杂数据类型.游标.用户自定义异常 */ BEGIN /* * 执 ...

  7. ORACLE中的PL/SQL

    一. 1.过程,函数,触发器是pl/sql编写.                2. 过程函数触发器是在Oracle中.                      3.pl/sql是非常强大的数据库过 ...

  8. Oracle数据库之PL/SQL触发器

    Oracle数据库之PL/SQL触发器 1. 介绍 触发器(trigger)是数据库提供给程序员和数据分析员来保证数据完整性的一种方法,它是与表事件相关的特殊的存储过程,它的执行不是由程序调用,也不是 ...

  9. Oracle数据库之PL/SQL过程与函数

    Oracle数据库之PL/SQL过程与函数 PL/SQL块分为匿名块与命名块,命名块又包含子程序.包和触发器. 过程和函数统称为PL/SQL子程序,我们可以将商业逻辑.企业规则写成过程或函数保存到数据 ...

随机推荐

  1. POJ 3368 Frequent values RMQ 训练指南 好题

    #include<cstdio> #include<cstring> ; const int inf=0x3f3f3f3f; inline int max(int x,int ...

  2. STM32的串口

    一:2个状态位_itstatus与_flagstatus的区别: _flagstatus:只是读状态标志,不管中断是否使能或发生.例如使用查询方式发送数据就需要读改状态位. _itstatus:和中断 ...

  3. unix 中 ps -ef命令详解

    ps -ef 查看正在活动的进程 ps -ef |grep abc 查看含有"abc"的活动进程 ps -ef |grep -v abc 查看不含abc的活动进程 1)ps a 显 ...

  4. 在OneThink(ThinkPHP3.2.3)中整合阿里云OSS的PHP-SDK2.0.4,实现Web端直传,服务端签名直传并设置上传回调的实现流程

    在OneThink(ThinkPHP3.2.3)中整合阿里云OSS的PHP-SDK2.0.4,实现本地文件上传流程 by shuijingwan · 2016/01/13 1.SDK安装 github ...

  5. openGL学习:Visual Studio配置OpenGL

    Visual Studio配置OpenGL 分两步: (一)下载glut,并将其放置到适当的位置 (二) 进行vs2005项目属性配置 ******************************** ...

  6. 解决CI框架的Disallowed Key Characters错误提示

    用CI框架时,有时候会遇到这么一个问题,打开网页,只显示 Disallowed Key Characters 错误提示.有人说 url 里有非法字符.但是确定 url 是纯英文的,问题还是出来了.但清 ...

  7. django 获取系统当前时间 和linux 系统当前时间不一致 问题处理。

    问题场景: 在django admin models 实体对象添加一个属性最后修改时间,用户在添加.修改是系统自动修改操作时间. UpdateTime自动获取系统时间.并且自动修改. 代码设置如下. ...

  8. [HDU 4821] String (字符串哈希)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4821 题目大意:给你M,L两个字母,问你给定字串里不含M个长度为L的两两相同的子串有多少个? 哈希+枚 ...

  9. iOS中FMDB的使用【单例】

    DYDB.h Objective-C 12345678910111213141516 #import <Foundation/Foundation.h> #import <FMDB/ ...

  10. 本地搭建SVN服务器 局域网

    http://blog.csdn.net/sunbaigui/article/details/8466310