ORACEL建表,索引,序列,触发器的分享

文章介绍了如何在Oracle数据库中创建表,包括定义字段和主键,并添加注释。接着,展示了创建索引以提升查询速度的方法。然后,创建了一个序列用于自动赋值,并解释了序列参数的含义。最后,编写了一个触发器,用于在插入新记录时自动填充ID。
摘要由CSDN通过智能技术生成

ORACEL建表,索引,序列,触发器的分享


提示:废话不罗嗦,直接上代码!

一、建表

CREATE TABLE PMS_MERCHANT_TERMINAL
(
  ID  NUMBER NOT NULL, -- id 主键
  MERC_ID  varchar2(50),  --商户号
  SN varchar2(30), -- sn编号
  STARTBUSINESSDATE varchar2(20), --绑机时间
  CREATIONDATE   varchar2(20),  -- 创建时间
  CREATION_NAME varchar2(15), --商户姓名
  MOBILEPHONE varchar2(20),    ---商户电话
  STATE varchar2(2)    ---绑定状态
  CONSTRAINT PMS_MERCHANT_TERMINAL_PK PRIMARY KEY (ID)
);


COMMENT ON COLUMN PMS_MERCHANT_TERMINAL.ID IS '自增id';
COMMENT ON COLUMN PMS_MERCHANT_TERMINAL.MERC_ID IS '商户号';
COMMENT ON COLUMN PMS_MERCHANT_TERMINAL.SN IS 'sn编号';
COMMENT ON COLUMN PMS_MERCHANT_TERMINAL.STARTBUSINESSDATE IS '绑机时间';
COMMENT ON COLUMN PMS_MERCHANT_TERMINAL.CREATIONDATE IS '创建时间';
COMMENT ON COLUMN PMS_MERCHANT_TERMINAL.CREATION_NAME IS '商户姓名';
COMMENT ON COLUMN PMS_MERCHANT_TERMINAL.MOBILEPHONE IS '商户电话';
COMMENT ON COLUMN PMS_MERCHANT_TERMINAL.STATE IS '绑定状态';

二、创建索引

在oracle中,索引是一种供服务器在表中快速查找一个行的数据库结构,是建立在表的一列或者多列上的辅助对象,目的是加快访问表中的数据。索引的作用:1、快速存取数据;2、既可以改善数据库性能,又可以保证列值的唯一性等等。


create index PMS_MERCHANT_TERMINAL_INDEX ON PMS_MERCHANT_TERMINAL(MERC_ID)

三、创建序列

create sequence PMS_MERCHANT_TERMINAL_SEQ
increment by 1
START WITH 1
minvalue 1
maxvalue 9999999999999999999999999999
cache 20;
START WITH从某一个整数开始,升序默认值是 1,降序默认值是-1
INCREMENT BY增长数。升序默认值是 1,降序默认值是-1
MAXVALUE指最大值
MINVALUE指最小值
NOMAXVALUE这是最大值的默认选项,升序的最大值是: 1027,降序默认值是-1
NOMINVALUE这是默认值选项,升序默认值是 1,降序默认值是-1026
CYCLE表示如果升序达到最大值后,从最小值重新开始;如果是降序序列,达到最小值后,从最大值重新开始
CACHE使用 CACHE 选项时,该序列会根据序列规则预生成一组序列号。保留在内存中,当使用下一个序列号时,可以更快的响应。当内存中的序列号用完时,系统再生成一组新的序列号,并保存在缓存中,这样可以提高生成序列号的效率。 Oracle默认会生产 20 个序列号。
NOCACHE不预先在内存中生成序列号

四、创建触发器

注意:有的sqlserver在创建trigger时需要在最后加上/,有的不需要
我使用的plsql15不需要后面加/

create trigger PMS_MERCHANT_TERMINAL_SEQ_tri before insert on PMS_MERCHANT_TERMINAL
for each row
begin
    select PMS_MERCHANT_TERMINAL_SEQ.nextval into :new.ID from  dual;
end;
/

至此一张表的创建就完成了!

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值