`

oracle-从一个表将数据插入到另一个表、自动插入序列、表数据结构不同

 
阅读更多
--临时表结构



create table RECOMMEND_SERVICE_TMP
(
  ID                NUMBER not null,
  MEMBER_ID         NUMBER not null,
  COMPANY_ID        NUMBER not null,
  RECOMMEND_SERVICE NUMBER not null
)
tablespace USERS
  pctfree 10
  initrans 1
  maxtrans 255
  storage
  (
    initial 64K
    minextents 1
    maxextents unlimited
  );


--插入数据表结构

create table RECOMMEND_SERVICE
(
  ID                NUMBER not null,
  GMT_CREATE        DATE not null,
  GMT_MODIFIED      DATE not null,
  MEMBER_ID         NUMBER not null,
  COMPANY_ID        NUMBER not null,
  RECOMMEND_SERVICE NUMBER not null
)
tablespace USERS
  pctfree 10
  initrans 1
  maxtrans 255
  storage
  (
    initial 64K
    minextents 1
    maxextents unlimited
  );


--数据

insert into RECOMMEND_SERVICE_TMP (ID, MEMBER_ID, COMPANY_ID, RECOMMEND_SERVICE)
values (1, 1, 1, 1);
insert into RECOMMEND_SERVICE_TMP (ID, MEMBER_ID, COMPANY_ID, RECOMMEND_SERVICE)
values (2, 2, 2, 2);
insert into RECOMMEND_SERVICE_TMP (ID, MEMBER_ID, COMPANY_ID, RECOMMEND_SERVICE)
values (3, 3, 3, 3);
insert into RECOMMEND_SERVICE_TMP (ID, MEMBER_ID, COMPANY_ID, RECOMMEND_SERVICE)
values (4, 4, 4, 4);
insert into RECOMMEND_SERVICE_TMP (ID, MEMBER_ID, COMPANY_ID, RECOMMEND_SERVICE)
values (5, 5, 5, 5);
commit;

--插入sql语句

insert into recommend_service
  (id, gmt_create, gmt_modified, member_id, company_id, recommend_service)
  (select seq_xm_test001.nextval as id,
          sysdate,
          sysdate,
          member_id,
          company_id,
          recommend_service
     from recommend_service_tmp)


--取系统时间和序列

  select seq_bureau_test_req_id.nextval as id from dual; -- 通过系统表(dual)一次只能取出一个序列
  select seq_bureau_test_req_id.nextval as id from mail; -- 通过用户自定义的表(mail) 取序列,则表中有多少条数据就可以取多少个序列
  select  sysdate  from files;  --files是用户创建的任意一张表=,表中不包含sysdate字段
分享到:
评论

相关推荐

    Oracle复制表数据的两种用法

    这种方法适用于将一个表的数据复制到另一个新表或者已存在的表中。基本语法如下: ```sql INSERT INTO table2 (column1, column2, ...) SELECT column1, column2, ... FROM table1 WHERE condition; ``` 在这里,`...

    mysql-oracle数据同步

    总的来说,MySQL到Oracle的数据同步是一项技术挑战,涉及数据库结构的比较、数据类型映射、事务管理等多个方面。在实际操作中,应充分考虑数据完整性、性能和系统的稳定性,选择合适的同步策略和技术。

    Oracle 11i 表结构

    - **将弹性域绑定到表**:通过修改表结构将定义好的弹性域绑定到具体的表上。 - **使用弹性域**:在应用程序中使用这些动态添加的字段进行数据的读取和写入。 3. **注意事项**: - 弹性域虽然方便,但可能会增加...

    plsql下不同用户数据导入

    5. 在导出数据时,可以选择 File per object 选项,以便将每个对象导出到一个特定的文件中。 导出和导入数据的步骤: 1. 首先,需要连接到 Oracle 数据库,使用 PLSQL 操作来导出数据。 2. 然后,需要选择要导出的...

    oracle通过触发器,实现序列自增

    - 使用`NEXTVAL`获取序列的下一个值,并将其赋值给即将插入的新记录的`LogId`字段。 - 使用`CURRVAL`获取上一个`NEXTVAL`分配的值,通常用于业务逻辑处理或其他表的更新。 3. **全局包`GLOBALPKG`的作用**: - ...

    Oracle数据库表序列ID自增生成器

    当我们在`BEFORE INSERT`语句中定义触发器时,它会在每条新记录插入到表之前被调用,将序列的下一个值赋给新行的ID字段。 在实际应用中,"Oracle数据库表序列ID自增生成器"可能是一个工具或脚本,简化了上述过程,...

    oracle创建表,索引,表空间,触发器,schema用户,序列的Sql文

    这个触发器在Employees表上设置,每当有新记录插入时,会自动将LastUpdate字段设置为当前系统时间。 5. **创建Schema用户**:Schema在Oracle中是逻辑上的数据库对象集合,通常与一个特定的数据库用户关联。使用`...

    oracle快速批量生成表和触发器和序列.zip

    在Oracle数据库管理中,批量生成表、触发器和序列是一项常见的任务,特别是在系统初始化或数据迁移时。这个压缩包文件“oracle快速批量生成表和触发器和序列.zip”显然是为了帮助用户快速完成这类操作。下面将详细...

    如何为oracle中的表增加自动增长列.pdf

    在Oracle数据库中,表的自动增长列通常是指使用序列(SEQUENCE)或者使用Oracle提供的自动增长数据类型(例如:IDENTITY或者GENERATED AS IDENTITY),以实现表中某列值能够随着记录的增加而自动递增。本文将介绍...

    Oracle数据库创建表tuser设置主键自动增长

    本文将详细介绍如何在Oracle环境中创建一个名为`tuser`的表,并实现其主键自动增长的功能。此外,还将介绍如何通过序列(sequence)来管理这个自动增长的主键值。 #### 一、创建表tuser 首先,我们需要定义`tuser`表...

    Oracle 插入数据.docx

    这种方式结合了INSERT INTO和SELECT,可以从一个或多个源表中提取数据并插入到目标表中。例如: ```sql INSERT INTO accounting_employees SELECT empno, ename, job, hiredate, sal FROM emp WHERE deptno = 10; ``...

    oracle创建表示例

    根据提供的文件信息,本文将详细解释Oracle数据库中的表创建、序列及触发器的使用方法,特别关注于如何实现主键自增长功能。 ### Oracle 创建表示例 #### 1. 创建学生表 (Student Table) 首先来看如何创建一个...

    Oracle中如何用一条SQL快速生成10万条测试数据

    这条SQL语句创建了一个名为`myTestTable`的新表,并填充了10万条数据,每条数据包括一个递增的ID(id)、一个按秒递增的日期时间(inc_datetime)、一个0到100之间的随机整数(random_id)和一个长度为20的随机字符...

    Oracle-视图&序列和同义词.ppt

    **视图**是Oracle数据库中一种虚拟表,它并不存储实际数据,而是根据用户定义的SQL查询逻辑从一个或多个表或视图中动态生成数据。视图的主要作用包括: 1. **数据安全性**:通过视图,可以限制用户访问特定的数据行...

    oracle自增长与临时表

    自增长字段通常用于自动为新插入的记录生成唯一的标识符,而临时表则是在特定会话或事务中存储临时数据的结构。 **一、Oracle自增长** 在Oracle中,没有像其他数据库系统(如MySQL)那样内置的自增长机制。但是,...

    oracle序列主键自增长

    为了进一步自动化这个过程,我们可以创建一个触发器,当插入或更新表时自动填充主键列。下面是一个例子: ```sql CREATE OR REPLACE TRIGGER 触发器名 BEFORE INSERT OR UPDATE ON 表名 FOR EACH ROW BEGIN SELECT...

    dbutils + oracle 增删改查批量插入示例

    总的来说,`dbutils + oracle 增删改查批量插入示例`是一个很好的学习资源,它帮助开发者掌握如何在Java项目中有效地进行数据库操作,尤其是在处理大数据量时,批量插入的优势尤为明显。通过理解和实践这个示例,...

    C#连接oracle数据库及根据表中数据生成xml

    - 数据读取:通过`OracleDataReader`或`OracleDataAdapter`读取查询结果,可以将数据填充到DataSet或DataTable中。 2. **Oracle数据库操作**: - 表创建:根据XML文件中的结构,可以编写SQL DDL语句(Data ...

    oracle数据库表按年分区脚本实战例子

    在Oracle数据库中,分区是一种强大的数据管理技术,它允许我们将大型表分割成更小、更易管理和查询的部分,称为分区。这种技术对于处理大量数据的企业级应用尤其有用,因为它可以提高查询性能,优化存储,并简化数据...

Global site tag (gtag.js) - Google Analytics