zoukankan      html  css  js  c++  java
  • Oracle常用语句

    创建表(人员信息表)

    create table tbluser
    (
        id number(8) primary key,
        username VARCHAR2(100) not null,
        sex VARCHAR2(2) default '',
        age number(3),
        companyaddress VARCHAR2(1000),
        homeaddress varchar2(1000),
        phone varchar2(40),
        tel varchar2(40),
        remark varchar2(4000)
    )

    --创建自动增长列

    1.创建序列

    2.创建触发器(或者在创建完序列后在插入表数据时直接在自增列使用user_id.nextval代替)

    创建一个从10001开始每次增1的序列

    --第一种方法
    create sequence tbluser_id start with 10001 increment by 1;
    
    --第二种方法:
    create sequence user_id
    minvalue 1
    maxvalue 9999999999999999999999999999
    start with 10001 --从10001开始
    increment by 1 -- 增量1
    cache 20;

    查询DB中创建的序列(区分大小写)

    select * from user_sequences t where t.sequence_name='USER_ID';

    为user表创建一个before insert 的触发器,在插入之前将表user的主键设置为上面的序列

    create or replace trigger user_id_trigger 
    before
    insert on tbluser for each row --一定要加上eac row 表示触发器适应于每一行 --when(new.id is null) --加和不加都行 declare mid number; begin select user_id.nextval into mid from dual; :new.id:=mid; --上面两句也可以写成如下语句(取消定义mid) --select user_id.nextval into:new.id from dual; end;

    查看触发器

    select * from user_triggers t where t.trigger_name='USER_ID_TRIGGER';

    给表添加索引

    create index idx_tbluser_id on tbluser(id);

    查看表约束

    select * from user_constraints;

    给表添加主键

    alter table tbluser add constraint ID_PK primary key(ID);

    给表添加备注

    COMMENT on column tbluser.id is '自动增长列';
    COMMENT on column tbluser.username is '用户名';

    给表新增列(多列)

    alter table tbluser add
    (
        usercode varchar2(40),
        userclass varchar2(40)
    );

    给表新增列(一列)

    alter table tbluser add memo varchar2(400);

    以上为博主自行整理,后续还会持续更新。如需转载请标注来源!

  • 相关阅读:
    windos端zabbix_agent重启报错:cannot open service
    搭建git服务器:centos环境
    git常用命令
    Centos7下ifconfig command not found 解决办法
    如何将EPEl安装在Centos7上
    linux安装openoffice,并解决中文乱码
    docker上配置mysql主从复制
    在docker上部署mysql
    linux上创建svn服务器(centos7.3)
    微信开发基于springboot
  • 原文地址:https://www.cnblogs.com/wuhanjackh/p/12227509.html
Copyright © 2011-2022 走看看