ORACLE 你应该知道的语句

这些经常用到的语句,我们应该记得,但是人脑不是电脑,在需要用的时候忘记可能就追悔莫及了,所以将他们一一记录下来,以后用到也有迹可循

 

1.修改表名:

ALTER TABLE TableName RENAME TO New_TableName;

需要注意的是修改表名后,原来的主键名是不修改的,所以还需要重建一下主键,当然大家有什么好的办法可以告知一下。

 

2.修改主键:

alter table ocs_instanceconfig_cfg drop constraint pk_ocs_instanceconfig;
alter table ocs_instanceconfig_cfg add constraint pk_ocs_instanceconfig_cfg primary key(CONFIGTYPE, TENANTID, MODULEID, CATALOGITEM, PARAMNAME);

需要注意的是,在使用备份的dmp的导入的数据库时,有可能将约束和索引的关联关系丢失了,如果删除索引不加添加cascade drop index,就有可能导致主键约束删了,但是索引没删。如果说你的数据有这样备份还原过的话:

alter table ocs_instanceconfig_cfg drop constraint pk_ocs_instanceconfig;

执行这个语句时,可能导致建主键自带的索引没有删掉,后面的建同样名字的主键时,索引会报错。

需要这样写:

alter table ocs_instanceconfig_cfg drop constraint pk_ocs_instanceconfig cascade drop index

 

3.删除表:

drop table tableName;

4.删除序列:

drop sequence sequence_name;


5.删除索引:

drop index index_name;

 

6.建表:

CREATE TABLE ocs_instanceconfig_def 
( 
    CONFIGTYPE NUMBER(10) NOT NULL, 
    TENANTID NUMBER(10) DEFAULT 0 NOT NULL, 
    MODULEID VARCHAR2(64) NOT NULL, 
    CATALOGITEM VARCHAR2(128) NOT NULL, 
    PARAMNAME VARCHAR2(128) NOT NULL, 
    PARAMVALUE VARCHAR2(512), 
    REMARK VARCHAR2(2048), 
    CREDATE           DATE,
    LASTUPDDATE       DATE, 
    CONSTRAINT PK_ocs_instanceconfig_def PRIMARY KEY (CONFIGTYPE, TENANTID, MODULEID, CATALOGITEM, PARAMNAME) 
);

 

7.建序列:

create sequence sequence_name INCREMENT BY 1 START WITH 1 NOCYCLE CACHE 1000 ORDER;

 

8.建索引:

CREATE INDEX index_name on table_name(ApplyTime, OriFileName,CBPID);

 

9.建视图:

CREATE VIEW 
view_name(CONFIGTYPE,TENANTID, MODULEID, CATALOGITEM,PARAMNAME,PARAMVALUE,REMARK,CREDATE,LASTUPDDATE) AS
SELECT
       B.CONFIGTYPE,
      B.TENANTID, 
      B.MODULEID, 
      B.CATALOGITEM,
      B.PARAMNAME,
      B.PARAMVALUE,
      B.REMARK,
      B.CREDATE,
      B.LASTUPDDATE
FROM 
   table_name B
UNION
SELECT
        A.CONFIGTYPE,
      A.TENANTID, 
      A.MODULEID, 
      A.CATALOGITEM,
      A.PARAMNAME,
      A.PARAMVALUE,
      A.REMARK,
      A.CREDATE,
      A.LASTUPDDATE
FROM 
   table_name A
where (A.MODULEID,A.CATALOGITEM,A.PARAMNAME) NOT IN (select B.MODULEID,B.CATALOGITEM,B.PARAMNAME from table_name B);

10.删视图:

drop view view_name;

11.修改表字段:

alter table table_name modify columun_name VARCHAR2(30);

 

12.删除表字段:

alter table table_name drop RESERVE6 ;

13.增加一个表字段:

alter table table_name add RESERVE6 VARCHAR2(64);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值