oracle中,用create table ... as select * from table_a...语句备份或者其他用途会不会产生归档日志,

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle中,用create table ... as select * from table_a...语句备份或者其他用途会不会产生归档日志,相关的知识,希望对你有一定的参考价值。

那意思是不是归档模式下,我把语句改为:
create table a ....;
commit;
insert /*+append*/ into a nologging ... select * from table ...;
commit;
这样就不会有归档日志了?

参考技术A 只要对数据块有更改操作,包括DML,DDL语句,甚至有时select查询也会产生日志(延时块清除),当前日志满了会将所有信息切换到归档日志里,所以create操作会产生归档日志; 参考技术B 这个其实就是建表语句,和普通的create table一样。有没有归档日志,主要看数据库是归档模式还是非归档。非归档模式下创建的表,默认为nologging模式。
但其他create table可以指定表空间什么的和 no logging不记录日志,这个语句只能是默认的。
默认表空间:SELECT username,default_tablespace FROM user_users;
是否日志:select table_name,logging from dba_tables where table_name='?';

Oracle SQL

前言:一直用平台开发,太多东西封装了,发现以前很多东西都忘记了,无聊的时候就来复习复习好了。

一、DDL

        CREATE  TABLE  table_name   创建表


 

   DESC  table_name   查看表结构


 

   RENAME old_name TO new_name    修改表名


 

   DROP TABLE table_name  删除表


 

        ALTER  TABLE   ADD   添加字段

   ALTER  TABLE   DROP  删除字段

   ALTER TABLE MODIFY 修改字段类型,长度,添加默认值


 

    

 

以上是关于oracle中,用create table ... as select * from table_a...语句备份或者其他用途会不会产生归档日志,的主要内容,如果未能解决你的问题,请参考以下文章

Oracle中如何授予某个新用户create table权限,那么这个用户就只有creat table权限

oracle数据库中的整型是啥

Oracle中,为啥同样的SELECT查询语句,加了CREATE TABLE AS后速度更快了?

oracle 关于 create temporary table as select……

通过阅读 Python 中的 Oracle DDL 语句为 Redshift 创建 Create Table 语句

Oracle创建表语句(Create table)语法详解及示例