5.记录类型使用合集

        记录类型的使用,是可以灵活的贴近表字段的类型使用的。比如,你只需要某个表中的几个字段,或者来自不同表的某几个字段,这个就需要一个了灵活的类型来实现这个功能了。

       

数据库定义语言 DDL 主要由 create,alter 与 drop 3个语句组成。
1.create
create index: -- 创建数据表索引
create procedure: -- 创建存储过程
create function: --创建用户函数
create view:--创建视图
create trigger :--创建触发器

create table company_emp
(
   empno number(4) primary key not null,  -- 员工工号
   ename varchar2(10 byte),               -- 员工名称
   job   varchar2(9 btye),                -- 员工职称
   mgr   number(4),                       -- 所属经理
   hiredate date,                         -- 雇佣日期
   sal  number(7,2),                      -- 员工工资
   comm number(7,2),                      -- 员工描述
   deptno number(2)                       -- 部门编号
)
2.drop
drop   语句用来移除数据库对象,比如可以移除表,视图,索引表等数据库对象

-- 移除company_emp表
drop table company_emp;
 
drop 包含一个隐式提交事务语句
3.alter
alter 语句是用来修改数据库对象,比如 可以修改表,试图,索引,触发器的定义等,
   由于alter 只需要修改数据库对象的局部,因此不需要定义完整的数据库对象参数,可以根据要修改的幅度来决定使用的参数。
-- 向company_emp 添加列
alter table company_emp add description varchar2(200) null;

--移除descriotion 字段
alter table company_emp drop column description;
--4. 为用户 scott 授权表,视图,和过程权限
grant create any table,
      create any view,
      create any procedure
      to scott;
      
5. 行级约束
create table invoice ( invoice_Id number not null unique, --自动编号,唯一,不为空 vendor_id number not null, --供应商id invoice_number varchar2(50) not null --发票日期 invoice_date date default sysdate, --发票日期 invoice_total number(9,2) not null, --发票总数 payment_total number(/9,2 ) default 0--付款总数 )
6. 表级约束  constraint
create table invoice
( invoice_Id number varchar2(50) constraint invoice_pk primary key, -- 自动编号,唯一,不为空
  vendor_id number constraint vendor_id_nn not null, --供应商id
  invoice_number varchar2(50) constraint vendor_number_nn not null, --发票编号
  invoice_date date default sysdate,   --发票日期
  invoice_total number(9,2) constraint invoice_total_nn not null,--发票总数
  payment_total number(9,2) default 0 --付款总数
  

)

 

上一篇:SAP MM 事务代码MRKO触发的财务凭证不会出现在PO History里


下一篇:实验一 分治与递归—用分治法实现元素选择 java算法