ORACLE数据库PL/SQL心得

一.关于表的创包的规范
程序包的定义分为程序包说明定义和程序包主体定义两部分组成。

程序包说明定义:

CREATE [OR REPLACE] PACKAGE package_name
  [AUTHID {CURRENT_USER | DEFINER}]
  {IS | AS}
  [公有数据类型定义[公有数据类型定义]…]
  [公有游标声明[公有游标声明]…]
  [公有变量、常量声明[公有变量、常量声明]…]
  [公有函数声明[公有函数声明]…]
  [公有过程声明[公有过程声明]…]
END [package_name];

程序包主体定义:

CREATE [OR REPLACE] PACKAGE BODY package_name
  {IS | AS}
  [私有数据类型定义[私有数据类型定义]…]
  [私有变量、常量声明[私有变量、常量声明]…]
  [私有异常错误声明[私有异常错误声明]…]
  [私有函数声明和定义[私有函数声明和定义]…]
  [私有函过程声明和定义[私有函过程声明和定义]…]
  [公有游标定义[公有游标定义]…]
  [公有函数定义[公有函数定义]…]
  [公有过程定义[公有过程定义]…]
BEGIN
  执行部分(初始化部分)
END package_name;

二.关于里面遇见的一些语法

  1. not exists 表示不存在/不包括
    例句:select * from Men m where t.id=12410491 and not exists (select 1 from Women w where w.id=m.id);
    语句有两个表,一个(Men)男生表一个(Women)女生表。()中的语句表示在女生表中查找m.id是否在女生表也存在。如果存在返回1,不存在不返回。如果不返回再执行前面的语句。因为一个id相当于身份证,不可能又是男生又是女生

2.修改包名
ALTER TABLE pkg_ls_Today_Contract RENAME TO t_Today_Contract

3.modify 修改空表里的字段类型
alter table pkg_ls_Today_Contract modify (contract_code varchar2(50));

猜你喜欢

转载自blog.csdn.net/weixin_44003632/article/details/86626329