虚位以待(AD)
虚位以待(AD)
首页 > 数据库 > Oracle数据库 > ORACLE你应该知道的语句

ORACLE你应该知道的语句
类别:Oracle数据库   作者:码皇   来源:互联网   点击:

ORACLE你应该知道的语句这些经常用到的语句,我们应该记得,但是人脑不是电脑,在需要用的时候忘记可能就追悔莫及了,所以将他们一一记录下来,以后用到也有迹可循1 修改表名:[sql]ALTER TABLE TableName RE
ORACLE你应该知道的语句   这些经常用到的语句,我们应该记得,但是人脑不是电脑,在需要用的时候忘记可能就追悔莫及了,所以将他们一一记录下来,以后用到也有迹可循   1.修改表名:   [sql]  ALTER TABLE TableName RENAME TO New_TableName;   需要注意的是修改表名后,原来的主键名是不修改的,所以还需要重建一下主键,当然大家有什么好的办法可以告知一下。   2.修改主键:   [sql]  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,就有可能导致主键约束删了,但是索引没删。如果说你的数据有这样备份还原过的话:   [sql]  alter table ocs_instanceconfig_cfg drop constraint pk_ocs_instanceconfig;   执行这个语句时,可能导致建主键自带的索引没有删掉,后面的建同样名字的主键时,索引会报错。   需要这样写:   [sql]  alter table ocs_instanceconfig_cfg drop constraint pk_ocs_instanceconfig cascade drop index       3.删除表:   [sql]  drop table tableName;   4.删除序列:   [sql]  drop sequence sequence_name;     5.删除索引:   [sql]  drop index index_name;     6.建表:   [sql]  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.建序列:   [sql]  create sequence sequence_name INCREMENT BY 1 START WITH 1 NOCYCLE CACHE 1000 ORDER;     8.建索引:   [sql]  CREATE INDEX index_name on table_name(ApplyTime, OriFileName,CBPID);     9.建视图:   [sql]  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.删视图:   [sql]  drop view view_name;   11.修改表字段:   [sql]  alter table table_name modify columun_name VARCHAR2(30);     12.删除表字段:   [sql]  alter table table_name drop RESERVE6 ;   13.增加一个表字段:   [sql]  alter table table_name add RESERVE6 VARCHAR2(64);  
相关热词搜索: ORACLE 应该 知道