关于ORACLE的各种操作~持续汇总~

  • 增.删.改:

 

增加所有
INSERT INTO 表名 VALUES(序列名.NEXTVAL,'值1','值2','值3','值4','值5');

指定增加
INSERT INTO 表名(字段1,字段2) VALUES('值1','值2');

指定删除
DELETE FROM 表名 WHERE 字段1='值1';

删除所有
DELETE FROM 表名;

指定更新
UPDATE 表名 SET 字段1='值1',字段2='值2' WHERE 字段3='值3';

 

 

INSERT INTO YXDP_B_TPF VALUES(SEQ_B_TPF.NEXTVAL,'蛋蛋','52','16526536566','skdlfew开放男就难看','男');
INSERT INTO YXDP_B_TPF(ID,XM) VALUES(SEQ_B_TPF.NEXTVAL,'前几年开发商');

DELETE FROM YXDP_B_TPF WHERE XM='前几年开发商';
DELETE FROM YXDP_B_TPF;

UPDATE YXDP_B_TPF SET XM='247',NL='247' WHERE XB='男';

 

  • 序列的创建:
CREATE SEQUENCE SEQ_TEST
INCREMENT BY 1 
START WITH 1 
NOMAXVALUE 
NOCYCLE 
NOCACHE;

此时创建的序列名为 SEQ_TEST
INCREMENT BY : 序列的变化值.这里为1.所以它的下个值会加1.如果这里为2的话.它的下个值会加2.如果为-2的话.它的下个值会-2.
START WITH : 序列的初始值.这里设置为1.默认也为1
NOMAXVALUE :序列的最大值.默认无最大值 NOMAXVALUE
NOCYCLE:不循环. 默认也是NOCYCLE
NOCACHE:缓存的序列个数.默认20.这里设置为不缓存

创建快捷方法:CREATE SEQUENCE 序列名;
  • 序列的查询
SELECT 序列名.CURRVAL 当前序列值 FROM DUAL;
例如:SELECT SEQ_B_DATADISPOSE_ENTERING_MU.CURRVAL 当前序列值 FROM DUAL;

SELECT 序列名.NEXTVAL 下一个序列值 FROM DUAL;
例如:SELECT SEQ_B_DATADISPOSE_ENTERING_MU.NEXTVAL 下一个序列值 FROM DUAL;
  • 删除序列
DROP SEQUENCE 序列名;
  • 查询所有储存过程触发器、序列视图
SELECT OBJECT_NAME 储存过程名 FROM USER_OBJECTS WHERE OBJECT_TYPE='PROCEDURE';

SELECT OBJECT_NAME 触发器名 FROM USER_OBJECTS WHERE OBJECT_TYPE='TRIGGER';

SELECT OBJECT_NAME 序列名 FROM USER_OBJECTS WHERE OBJECT_TYPE='CURSOR';

SELECT OBJECT_NAME 视图名 FROM USER_OBJECTS WHERE OBJECT_TYPE='VIEW';

SELECT OBJECT_NAME 表名 FROM USER_OBJECTS WHERE OBJECT_TYPE='TABLE';
  • 修改表、字段信息
修改表名
ALTER TABLE 原表名 RENAME TO 新表名;

修改字段名
ALTER TABLE 表名 RENAME COLUMN 原字段名 TO 新字段名;

添加字段
ALTER TABLE 表名 ADD (字段名 VARCHAR2(255) NOT NULL);

删除字段
ALTER TABLE 表名 DROP COLUMN 字段名;
修改表注释
COMMENT ON TABLE 表名 IS '要修改的注释';
修改字段注释
COMMENT ON COLUMN 表名.字段名 IS '要修改的注释';
  • 查看表注释
查询YXDP_B_ACTUAL_FLIGHT_TOTAL中所有字段的注释
SELECT * FROM USER_COL_COMMENTS WHERE TABLE_NAME='YXDP_B_ACTUAL_FLIGHT_TOTAL';
  •  DELETE删除,数据找回方法
这里查找的数据是2019-05-14的数据,
SELECT * FROM 表名 AS OF TIMESTAMP TO_TIMESTAMP('2019-05-14','yyyy-mm-dd')

把删除的表2数据 重新恢复到表1中
INSERT INTO 表名1(SELECT * FROM 表名2 AS OF TIMESTAMP TO_TIMESTAMP('2019-05-14','yyyy-mm-dd '));

 

 

 

 
posted on 2019-04-18 17:56  陶攀峰  阅读(223)  评论(0编辑  收藏  举报

顶部 底部