`
lushuaiyin
  • 浏览: 704921 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

oracle复制一张表(表结构和数据),2张表的数据转移;rename表名,字段名

 
阅读更多


现在有一张表TEST(已经有数据),表结构如下:

create table MYTEST
(
  user_name VARCHAR2(30),
  password  VARCHAR2(45),
  age       NUMBER(3),
  user_id   VARCHAR2(32) not null
)
数据:

USER_NAME PASSWORD AGE USER_ID
张三 23232 34 6DEA3727FFA8016D005B8B04D5CCB00E
admin 111111 21 A10CF67AFFA8016D000B96A539684B1E
李四 123s 24 6DA32648FFA8016D01F2F4B65643D6A8
郭德纲 asd 333 9AD76CD8FFA8016B01E969D957C69860


rename使用:

一:修改表的名字。
rename MYTEST to MYTEST2

这时我们再查询改名后的表,就能查到数据。
而再去查以前的表就会报错ORA-00942:表或视图不存在。

二:修改字段的名字。
(我们把表明再改回去,回复原状。)

alter table MYTEST  rename column user_name to user_name_new


这时的表结构:
create table MYTEST
(
  user_name_new VARCHAR2(30),
  password      VARCHAR2(45),
  age           NUMBER(3),
  user_id       VARCHAR2(32) not null
)

2张表的数据复制,转移。

-------------------------------有一张表存在,创建新表--------------------------------------------
现在开始表和表之间的数据倒腾。
一:创建一个新表YOUTEST,表结构要和已有的表MYTEST一样,并且数据也要倒过去。

create table YOUTEST as 
 select * from MYTEST

(注意as关键字不能用is代替)


二,创建一个新表YOUTEST_B,表结构要和已有的表MYTEST一样,但是不倒数据,只要表结构。
后面多加了where 1=2的过滤条件,把数据都过滤掉,也可以在where中添加自己的过滤条件,
那样就是把符合条件的数据倒过去了。

 create table YOUTEST_B as 
 select * from MYTEST  where 1=2 

三,创建一个新表YOUTEST_C,表结构只要表MYTEST的某些字段,并且数据也要倒过去。
3-1(字段名称不变)
create table YOUTEST_C as 
 select MYTEST.USER_NAME,MYTEST.AGE from MYTEST  
3-2(创建时同时修改字段名)
create table YOUTEST_C_2(C_USER_NAME,C_AGE) as 
 select MYTEST.USER_NAME,MYTEST.AGE from MYTEST  
注:也可以创建好后使用rename来修改字段名,用modify来修改字段定义,那样就多一步了。

四,创建一个新表YOUTEST_D,表结构只要表MYTEST的某些字段,但是不倒数据,只要表结构。
(同上三,只是后面多加了where 1=2的过滤条件,把数据都过滤掉)
create table YOUTEST_D as 
 select MYTEST.USER_NAME,MYTEST.AGE from MYTEST 
  where 1=2 

----------------------------------2张表都存在------------------------------------

一,表结构相同的表,一张有数据MYTEST,一张无数据YOUTEST_B,把有数据的表的数据拷贝到无数据的表中。

insert into YOUTEST_B 
 select * from MYTEST

二,表结构不相同的表,某些字段相同,一张有数据MYTEST,一张无数据YOUTEST_D,
把这些字段的值对应拷贝到目标表的字段中。


insert into YOUTEST_D(YOUTEST_D.USER_NAME,YOUTEST_D.AGE) 
 select MYTEST.USER_NAME,MYTEST.AGE from MYTEST








分享到:
评论

相关推荐

    Oracle中比对2张表之间数据是否一致的几种方法

    当两张表的数据结构完全相同,并且其中一张表所在数据库版本为Oracle 11g及以上时,可以使用`dbms_comparison`包来进行数据对比。此包提供了非常便捷的方式来检测两表之间的差异。 ##### 实现步骤 1. **创建测试表...

    oracle导出表结构到excel中

    在Oracle数据库管理中,将表结构导出到Excel文件是一个常见的需求,这有助于数据分析、报告制作或数据共享。以下是一个详细的步骤指南,介绍如何完成这个任务。 首先,我们需要准备一个SQL查询来获取所需表的数据...

    oracle修改表结构

    在Oracle数据库管理中,对表结构进行修改是一项常见的任务,涉及到添加字段、修改字段属性、删除字段、重命名表或字段、以及注释等操作。以下是对这些操作的详细解析: ### 添加字段 使用`ALTER TABLE`语句可以向...

    ORACLE ERP 11i表结构字段中文名称

    ### ORACLE ERP 11i表结构字段中文名称解析 #### BOM 模块常用表结构 ##### 1. **bom_bill_of_materials** **表名**: bom.bom_bill_of_materials **说明**: BOM 清单父项目表 **主要字段**: - **BILL_SEQUENCE...

    mes系统整套数据库表结构详细说明文档(超300张表结构).docx

    该文档提供了MES系统数据库表结构的详细说明,包括表结构、字段说明、数据类型等信息。 2. applay_sn表 该表用于存储产品的应用序号信息,包括产品ID、应用序号、产品名称等信息。 3. assemble_batchno_info表 该...

    ORACLE 多表查询与数据修改

    ### ORACLE 多表查询与数据修改 #### 学习目标 - **熟悉三个或四个表的连接查询**:在实际应用中,我们往往需要从多个表中获取数据以完成复杂的业务逻辑。通过本节的学习,您将能够掌握如何利用Oracle数据库进行多...

    oracle异库同表名的两个数据库中数据合并或数据表结构的修改

    本文将针对“Oracle异库同表名的两个数据库中数据合并或数据表结构的修改”这一主题进行详细阐述,旨在帮助读者更好地理解和掌握相关的操作技巧。 #### 一、背景介绍 随着业务发展和技术迭代,企业往往需要对现有...

    oracle_修改表结构

    ### Oracle 修改表结构知识点 #### 一、概述 在Oracle数据库中,经常需要对已有的表进行结构调整,比如添加新字段、修改字段属性、删除字段等。这些操作可以通过`ALTER TABLE`语句来完成。本篇文章将详细介绍如何...

    Activiti-5.21数据库表结构详解(共25张表)

    Activiti-5.21数据库表结构详解(共25张表) 工作流的应用越来越广泛,而activiti是公认的现阶段最好的工作流框架之一,详细了解activiti的库表结构有助于您更好的掌握学习工作流框架,共享本资源以供广大编程从业人员...

    获取ORACLE 表字段,表名,以及主键之类等等的信息

    这些信息包括表名、字段名、数据类型、字段长度、是否可为空以及主键等。掌握如何有效地获取这些信息对于进行数据库设计、维护和优化具有重要意义。 #### 1. 查询所有用户表 要获取当前用户所有的表信息,可以使用...

    Oracle Scott帐号下的三张表数据

    在这个压缩包中,包含了Oracle SCOTT schema下的三张经典示例表——EMP、DEPT和SALGRADE的数据,这些数据以Excel(xls)格式提供。在本文中,我们将详细探讨这三张表的相关知识以及它们在数据库中的作用。 首先,...

    SQL和Oracle中统计数据库中表个数及表名

    在SQL和Oracle数据库管理系统中,有时我们需要统计数据库中包含的表的数量以及获取具体的表名。以下是如何在两者中实现这一目标的详细步骤。 在SQL中,我们通常使用系统对象表来获取相关信息。`sys.objects`是SQL ...

    在多表中查找一个表名或者字段名的 SQL 语句

    在IT行业中,数据库管理是至关重要的技能之一,尤其是在处理复杂数据结构时,能够熟练地使用SQL语句进行数据检索和管理显得尤为重要。本文将详细解析如何在多表中查找特定的表名或字段名,这一技能对于数据库管理员...

    kettle全量多表数据同步

    - **进行数据迁移**: 使用Navicat的数据迁移功能,选择Oracle作为源数据库,MySQL作为目标数据库,然后选择要迁移的表和字段,最后执行迁移操作。 **2.2 数据校验** 在进行数据迁移之后,必须对迁移后的数据进行...

    泛微OA流程存储的数据表解析

    泛微OA流程存储的数据表解析主要涉及OA办公自动化系统中数据结构和信息存储方式的关键细节。在OA系统中,流程的执行和管理涉及到多种数据表,这些表存储了表单、单据、审批节点等核心信息。以下是这些关键概念的详细...

    mes系统整套数据库表结构详细说明文档(超300张表结构).zip

    此文档“mes系统整套数据库表结构详细说明文档(超300张表结构)”提供了一个全面的视角,深入了解MES系统的数据架构和存储机制。 1. 数据库表结构设计: - MES系统的数据库通常包含大量的业务实体表,如订单、...

    Activiti 5.22.0数据库表结构(21张表全部表和字段中文注释和取值说明)

    2、21张表全部表和字段中文注释和取值说明添加注释脚本(单SQL文件) 3、21张表全部表和字段中文注释和取值说明添加注释脚本(一表一SQL文件) 自己花了三个小时亲手撸出来的添加注释SQL脚本。 问题一:有什么用? ...

    禅道数据表结构

    ### 禅道数据表结构解析 #### 一、禅道数据表结构概览 禅道是一款集成项目管理工具,其强大的功能背后依赖于一系列的数据表来存储与管理各项信息。通过对禅道的数据表结构有深入的理解,可以更好地进行系统的二次...

    oracle回闪表中的数据

    【Oracle 回闪表数据详解】 Oracle数据库的回闪技术是一项强大的功能,它允许数据库管理员(DBA)恢复数据到过去的某个特定时间点,而无需完全恢复整个数据库。在Oracle 10g及更高版本中,回闪表是这项技术的一个...

    oracle对某表进行审计,观察对这个表的增删改查等sql操作.txt

    oracle对某表进行审计,观察对这个表的增删改查等sql操作

Global site tag (gtag.js) - Google Analytics