1.语言基础

1 块结构
SQL> declare
    2    v_name number :=0;
    3  begin
    4    v_name :=10/v_name;
    5    dbms_output.put_line(v_name);
    6  exception
    7    when others then
    8            dbms_output.put_line('error');
    9  end;
    10  /
error


2 块的分类
PL/SQL的语句块分为匿名块和命名块。
  匿名块:动态构造,只执行一次。
  命名块:自定义函数、过程、包、触发器。


3 要想用dbms_output.put_line();在屏幕进行输出,需要用:set serveroutput on
4 变量类型
  binary_integer:整数,主要用来计数
  number:数字类型
  char:定长字符串
  varchar2:变长字符串
  date:日期
  long:长字符串,最长32KB
  boolean:布尔类型,可以取true、false、null.PL/SQL中默认null,建议给初值
5 dbms_output.put_line()不能打印boolean类型的值
6 注释 
  行注释:--
  多行注释:/* */
7 %type属性
SQL> declare
    2    v_empno number;
    3    v_ename emp.ename%type;
    4    v_job   v_ename%type;
    5  begin
    6    dbms_output.put_line('ok');
    7  end;  
    8  /
ok
8 复合变量类型table  相当于数组
  必须先声明类型,再用类型声明变量
  SQL> declare
  2      type type_table_emp_empno is table of 
emp.empno%type index by binary_integer;
  3      v_empnos type_table_emp_empno;
  4    begin
  5      v_empnos(0) :=7369;
  6      v_empnos(2) :=7839;
  7      v_empnos(-1) :=7332;
  8      dbms_output.put_line(v_empnos(0)||v_empnos(2)||v_empnos(-1));
  9    end;
 10    /
736978397332
9 复杂变量类型record 相当于类 
  方式一:使用显示方式定义
SQL> declare
    2    type type_record_dept is record
    3      (no dept.deptno%type,
    4       name dept.dname%type,
    5       loca dept.loc%type
  6      );
  7    v_temp type_record_dept;
  8  begin
  9    v_temp.no := 50;
 10    v_temp.name := 'sales';
 11    v_temp.loca := 'China';
 12    dbms_output.put_line(v_temp.no||v_temp.name);
 13  end;
 14  /
50sales
方式二:使用%rowtype属性定义记录
SQL> declare
  2    v_temp dept%rowtype;
  3  begin
  4    v_temp.deptno :=50;
  5    v_temp.dname :='sales';
  6    v_temp.loc :='China';
  7    dbms_output.put_line(v_temp.deptno||v_temp.dname);
  8  end;
  9  /
50sales

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值