Oracle数据库的应用,初识PLSQL-1

504 阅读2分钟

「这是我参与2022首次更文挑战的第15天,活动详情查看:2022首次更文挑战」。

 表关系设计

  • 一对多

多的一方引用一的一方

  • 一对一

两表共用主键

  • 多对多

通过第三张表实现,建立两个一对多的关系

PLSQL

PL/SQL(Procedural Language/Structured Query Language,过程语言/结构化查询语言)

1. PL/SQL 基本格式

PL/SQL的块由变量声明、程序代码和异常处理代码3部分组成:

DECLARE (声明)

  • 声明一些变量、常量、用户定义的数据类型及游标:
  • name varchar(30); --声明时不设置值
  • name varchar(30):=‘Jack’;--声明带有默认值
  • name preson.name%type; --直接引用一个表的数据类型

BEGIN (主体)

  • 主程序体,在这里可以加入各种合法语句

EXCEPTION (异常处理)

  • 异常处理程序,当程序中出现错误时执行这一部分

END (结束)

2. PL/SQL有效字符

 1.大小写英文字母

 2.0~9的阿拉伯数字

 3.下划线

 4.操作符,包括+、-、*、/、<、>、!、=、@、%等

 5.最大长度为30个字符,不区分大小写,但建议适当使用大小写,增加程序的可读性

3. 变/常量声明

Declare 声明变量(char, varchar2, date, number, boolean, long,integer,type,rowtype)

  varl             char(15);

  married          boolean := true;

  psal             number(7,2);

  my_name          emp.ename%type; 引用型变量,即my_name的类型与emp表中ename列的类型一样

  emp_rec          emp%row type; 记录集型变量

记录变量分量的引用: emp_rec.ename:='ADAMS';

声明常量:  常量名 constant 数据类型 := 值;

常量一旦定义,在以后的使用中其值不再改变,一些固定的大小为了防止有人改变,定义成常量。

例如 pass_score constant INTEGER := 60 ;

4. 输出

set severoutput on --SQL*Plus需要, PL/SQL Developer不需要

  • declare
    name varchar(10):='HelloWorld';

  begin

     dbms_output.put('test:'); --不换行输出,不能单独工作

     dbms_output.put_line(name); --换行输出

  end;

5. 接收用户的输入赋值 &变量名称

    declare

    begin

           dbms_output.put_line('你输入的值是:' || '&word');

end;

6. into赋

用into关键字可以将查询结果的值,赋给变量:

declare

    name varchar2(100);

    id number;

  begin

     select id,name into id,name from student where id = 1;

     dbms_output.put_line('id的值:'||id ||',name的值:'|| name);

  end;