oracle提高数据移植速度.

2023-11-15

author :skate
time :2008/07/21

提高数据移植速度.

序列也能影响数据迁移的速度!!!!

1.测试表:test_skate1


SQL> select count(*) from test_skate1;

  COUNT(*)
----------
   5841920

已用时间:  00: 00: 00.28
---------------------------------
2.测试序列:

SQL> l
  1  select dbms_metadata.get_ddl('SEQUENCE',o.object_name) from user_objects
  2* o where o.object_type='SEQUENCE' and o.object_name='SEQ_SKATE_TEST'
SQL> /

DBMS_METADATA.GET_DDL('SEQUENCE',O.OBJECT_NAME)
--------------------------------------------------------------------------------


   CREATE SEQUENCE  "HPO3"."SEQ_SKATE_TEST"  MINVALUE 1 MAXVALUE 99999999999999


已用时间:  00: 00: 01.40
SQL>


SQL> alter sequence seq_skate_test cache 20;

序列已更改。


SQL> insert /*+append*/ into test_skate
  2  select  /*+parallel(s,4) full(s)*/ seq_skate_test.nextval,s.* from test_ska
te1 s;

已创建5841920行。

已用时间:  00: 00: 55.35
SQL> rollback;

回退已完成。

已用时间:  00: 00: 00.00
SQL> alter sequence seq_skate_test cache 2000;

序列已更改。

已用时间:  00: 00: 00.00
SQL> insert /*+append*/ into test_skate
  2  select  /*+parallel(s,4) full(s)*/ seq_skate_test.nextval,s.* from test_ska
te1 s;

已创建5841920行。

已用时间:  00: 00: 14.70
SQL>

SQL> alter sequence seq_skate_test cache 20;

序列已更改。


############################################################

下面介绍简单介绍下序列的知识;


关于Oracle的序列(Sequence)使用

序列是一数据库对象,利用它可生成唯一的整数。一般使用序列自动地生成主键值。对我们程序员来讲,精力时间有限,我们只学最有用的知识。大家请看:

1) 建立序列命令
CREATE SEQUENCE [user.]sequence_name
[increment by n]
[start with n]
[maxvalue n | nomaxvalue]
[minvalue n | nominvalue];
[NOCYCLE]  --
INCREMENT BY: 指定序列号之间的间隔,该值可为正的或负的整数,但不可为0。序列为升序。忽略该子句时,缺省值为1。
START WITH:指定生成的第一个序列号。在升序时,序列可从比最小值大的值开始,缺省值为序列的最小值。对于降序,序列可由比最大值小的值开始,缺省值为序列的最大值。
MAXVALUE:指定序列可生成的最大值。
NOMAXVALUE:为升序指定最大值为1027,为降序指定最大值为-1。
MINVALUE:指定序列的最小值。
NOMINVALUE:为升序指定最小值为1。为降序指定最小值为-1026。
NOCYCLE:一直累加,不循环

2) 更改序列命令
ALTERSEQUENCE [user.]sequence_name
[INCREMENT BY n]
[MAXVALUE n| NOMAXVALUE ]
[MINVALUE n | NOMINVALUE];
修改序列可以:
    修改未来序列值的增量。
    设置或撤消最小值或最大值。
    改变缓冲序列的数目。
    指定序列号是否是有序。

注意:
1,第一次NEXTVAL返回的是初始值
2,可以alter除start至以外的所有sequence参数.如果想要改变start值,必须 drop sequence 再 re-create .

 

3) 删除序列命令
DROP SEQUENCE [user.]sequence_name;
用于从数据库中删除一序列。

------end-------

 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

oracle提高数据移植速度. 的相关文章

  • SQLite 自然连接损坏?

    我刚刚开始了解 NATURAL JOIN 而 SQLite 的行为并不像我预期的那样 SELECT FROM r1 NATURAL JOIN r2 NATURAL JOIN r3 and SELECT FROM r1 NATURAL JOI
  • 在 MySQL 中插入时检查并防止相似字符串

    简要信息 我有3张桌子 Set id name SetItem set id item id position TempSet id 我有一个函数可以生成新的随机组合Item桌子 基本上 总是在成功生成之后 我在中创建一个新行Set表 获取
  • 在SQL中,如何通过查找与某一列相等的所有行来更新表的每一行,然后将另一列设置为彼此相等

    所以基本上这就是伪代码 但我不知道如何在 SQL 中执行此操作 请帮忙 for each row in table1 loop through each row in table 2 if table1 s row column 1 tab
  • 获取一组记录之间的时间差

    我有一个具有以下结构的表 ID ActivityTime Status 19 2013 08 23 14 52 1 19 2013 08 23 14 50 1 19 2013 08 23 14 45 2 19 2013 08 23 14 3
  • 数据库级别的别名列名 [MySQL]

    别名 可能是错误的词 因为它是在将列 表名称作为查询中的其他名称引用的上下文中使用的 我感兴趣的是是否有一种方法可以在数据库中为列指定两个名称 如果我要打印这样的表格 它看起来会是这样的 mysql gt SELECT FROM User
  • 如何在 DataColumn.Expression 中使用 IF/ELSE 或 CASE?

    我有一个包含 1 列的表 状态 我想添加另一列名为 Action 的列 其值如下 如果 Status Yes 则 Action Go 否则 Action Stop 我使用以下代码添加到 操作 列中 但它不起作用 myDataTable Co
  • Postgres 中 -Infinity 和 Infinity 的适当值

    在一种情况下 我们必须在 Postgres DB 中存储 无穷大和 无穷大的值 应该考虑什么合适的值 如果没有 请建议最合适的替代方案 你实际上可以使用 infinity and infinity for FLOAT4 and FLOAT8
  • 通过Java从MySQL中获取大量记录

    有一个 MySQL 表 服务器上的用户 它有 28 行和 100 万条记录 也可能会增加 我想从这个表中获取所有行 对它们进行一些操作 然后将它们添加到 MongoDB 中 我知道通过简单的 从用户中选择 操作来检索这些记录将花费大量时间
  • PLS-00103:遇到符号“;”当预期出现以下情况之一时:

    我正在尝试插入用户安全问题的答案 以用于密码重置功能 Ellucian 横幅 v8 提供了一个用于运行此 API 的 API 我对他们的 API 非常陌生 从下面的错误消息来看 我还远远没有正确运行它 任何帮助表示赞赏 我尝试在 Oracl
  • 计算包含字母/数字的行数

    我想要实现的目标很简单 但是解释起来有点困难 我不知道在 postgres 中这是否真的可能 我处于相当基础的水平 SELECT FROM WHERE LEFT JOIN ON HAVING 等等基本的东西 我正在尝试计算包含特定字母 数字
  • 手动更改postgresql中查询的执行计划?

    是否可以在postgresql中手动更改执行计划的操作顺序 例如 如果我总是想在过滤之前进行排序操作 尽管这在 postgresql 的正常使用中没有意义 是否可以通过例如手动强制执行该操作改变运营的内部成本 如果我实现自己的功能呢 是否可
  • Postgresql 串行错误自动增量

    我在 postgresql 上遇到问题 我认为 postgresql 中有一个错误 我错误地实现了一些东西 有一个表包括colmn1 primary key colmn2 unique colmn3 插入一行后 如果我尝试使用现有的另一次插
  • 将图像列保存到 SQL Server 2000 中的文件

    我在 SQL Server 2000 中有一个包含图像列的表 我需要将图像数据保存到文件系统上的文件中 在 SQL Server 2005 中 我可以使用 ADODB Stream 对象进行文件 I O 但这在 SQL Server 200
  • 如何检查oracle数据库中分配给模式、角色的对象的权限(DDL、DML、DCL)?

    大多数时候 我们都在与愚蠢的事情作斗争 以获取架构 角色及其对象的权限详细信息 并尝试找到一些简单的方法来获取有关它的所有详细信息以及伪查询代码 以批量生成授予语句以供进一步使用执行 所以我们在这里得到它 关于数据字典视图前缀的一些简单介绍
  • SQL Server 批量插入 - “批量加载数据转换错误”

    bulk insert dbo A FROM d AData csv WITH FIELDTERMINATOR ROWTERMINATOR n 将批量数据插入数据库时 在检查可疑数据后 我遇到了无法解释的错误 消息 4867 16 级 状态
  • 如何将 sql 数据输出到 QCalendarWidget

    我希望能够在日历小部件上突出显示 SQL 数据库中的一天 就像启动程序时突出显示当前日期一样 在我的示例中 它是红色突出显示 我想要发生的是 当用户按下突出显示的日期时 数据库中日期旁边的文本将显示在日历下方的标签上 这是我使用 QT De
  • 从 PL/SQL 调用 shell 脚本,但 shell 以 grid 用户而非 oracle 身份执行

    我正在尝试使用 Runtime getRuntime exec 从 Oracle 数据库内部执行 shell 脚本 在 Red Hat 5 5 上运行的 Oracle 11 2 0 4 EE CREATE OR REPLACE proced
  • RANK() OVER PARTITION 并重置 RANK

    如何获得在分区更改时重新启动的 RANK 我有这张表 ID Date Value 1 2015 01 01 1 2 2015 01 02 1
  • 如何将事物的组合映射到关系数据库?

    我有一个表 其记录代表某些对象 为了简单起见 我假设该表只有一列 这是唯一的ObjectId 现在我需要一种方法来存储该表中的对象组合 组合必须是唯一的 但可以是任意长度 例如 如果我有ObjectIds 1 2 3 4 我想存储以下组合
  • 创建日期范围表

    我正在编写一份需要显示每天值的报告 我有查询的开始日期和结束日期 但我希望避免丢失日期 以防表不包含特定日期的值 我正在考虑创建一个基本日期范围表 其中包含开始和结束之间的所有日期 然后将其与数据表左连接以显示每一天的值 我找到了一些适用于

随机推荐

  • 数据库实时同步利器——CDC(变化数据捕获技术)

    在进行数据ETL过程中 我们经常需要通过周期性的定时调度将业务数据按照T 1的方式同步到数据仓库中 进行数据分析处理 最终通过BI报表展示给最终用户 但这种方式实时性较差 用户往往只能看到昨天的数据 会影响用户决策的及时性 而如果用户要近实
  • 更换持续集成工具,从 Travis 到 Github Actions

    我真傻 真的 单单受文档的推荐就选择了 Travis 作为部分项目的持续集成工具 没有料到它早已于 2020 年 12 月更换了免费政策 不再为开源项目提供免费的用于持续集成使用的 Credits 了 当赠送的 10000 个点数用完 就需
  • 【踩坑经历】Java Long 类型传给前端损失精度的问题

    最近在做一个 SpringBoot Vue 的项目 持久层框架用的是 MyBatis Plus 然后遇到了一个问题 一起来看下怎么回事 这个项目就是一个文章收藏器 可以收藏一些技术文章 然后可以选择星标 以便查找这篇文章 那么点击星标的按钮
  • 服务器的tomcat调优和jvm调化

    下面讲述的是tomcat的优化 及jvm的优化 Tomcat 的缺省配置是不能稳定长期运行的 也就是不适合生产环境 它会死机 让你不断重新启动 甚至在午夜时分唤醒你 对于操作系统优化来说 是尽可能的增大可使用的内存容量 提高CPU 的频率
  • 操作系统12----进程间通信IPC

    进程间通信IPC 1 进程通信 IPC Inter Process Communication 1 1直接通信 1 2间接通信 1 3阻塞通信 1 4非阻塞通信 2 信号 Signal 3 管道 pipe 4 消息队列 5 共享内存 1 进
  • 基于面板数据的熵值法介绍与实现

    熵值法是一种基于信息熵理论的客观赋值方法 即数据越离散 所含信息量越多 对综合评价影响越大 目录 一 基于面板数据熵值法介绍 二 R语言实现 参考文献 一 基于面板数据熵值法介绍 传统的熵值法有个弊端 只能针对于截面数据 即根据某一年 k
  • MySQL创建表时提示:1067 - Invalid default value for ‘sex‘

    问题 在创建表的时候如果有中文 则会提示 1067 Invalid default value for sex 比如 创建信息表 create table userInfo card id int primary key auto incr
  • unity 内嵌网页简单流程(3D WebView 3.14.1)

    我是用于 web 平台 特此记录 3D WebView 主要实现在unity 中制作网页浏览器 可使用平台 很强大 其他类似插件都有平台缺陷 Android iOS UWP Hololens Windows macOS WebGL 0 插件
  • 制造行业主数据同步集成

    主数据是描述企业核心业务实体的数据 是企业核心业务的主要构成 各个订单 合同以及业务的主体 在企业内部被重复 共享应用的数据 主数据跨越企业各个业务部门以及各类业务系统 是应用系统间数据交互的基础 近期一直北方某制造业进行主数据治理工作 谈
  • React Router源码解析

    虽然React Router已经到了V6版本了 但在我们项目中 目前主要用的还是React Router的V5版本 所以此处我们从V5版本着手 去了解前端路由的实现原理 目标 希望收获 前端路由的基本原理 React Router 的实现原
  • Scanner的.next()以及.nextLine()各自代表什么意思

    String str new Scanner System in nextLine String str new Scanner System in next next 方法一次读取一个无间隔子串 比如 TAB 空格 回车符 的时候 会终止
  • Chromium OS 初体验

    Chromium OS可是早有耳闻 但是一直没有尝试 最近很多评论甚至认为会对Windows和Mac都能够造成压力 于是迫不及待的想尝试一下了 百度下了官网 官网很贴心 不光给了用于写入U盘的镜像文件 最初是针对上网本的 所以自然不是刻录成
  • Python 基础知识6 字典

    字典 定义字典 d key1 22 key2 meng print d print type d 访问字典里的值 dict Name Runoob Age 7 Class First print dict Name dict Name pr
  • 在Unity中编写单元测试

    最近在我忙于我的最新项目时 我一直在思考 我如何能单元测试代码 我知道如果我先把它搁一边 在编写一大段游戏代码后 我可能再也不会回头来写测试了 编写单元测试对我有两个挑战 首先 游戏不同于其他类型的软件 没有好的代码分段来处理好输入 以及图
  • Hello World

    编写思路 创建 Java 源文件 将源文件编译为 class 文件 运行 class 文件 编写代码 代码块 我的第一个 Java 程序 class 类 Java 程序基本组成单位 HelloWorld 为类的名称 public class
  • 企业微信自建内部应用Demo源码,附在线Demo及视频讲解,创建测试公司及测试应用简单配置即可使用

    自建内部应用Demo源码 前端vite vuejs https github com liyuexi qywx vuejs qywx vuejs 企业微信自建内部应用demo源码前端vite vuejs https github com l
  • 最简单的实现[三栏布局中间自适应]方法

    一 float margin 左盒子 左浮动 右盒子 右浮动 中间盒子 左右加margin 注意 盒子的书写顺序是左右中 div class container div class left w div div class right w
  • docker 安装 nginx1.23.2

    注意 nginx 不能提前挂载配置 html 目录可以提前挂载 但提前挂载了访问默认nginx页面就没有了 部署前端时可提前挂载 所以我们先提前创建副本 1 提前创建挂载文件 创建容器副本 主要作用与获取配置文件 先创建一个没有的nginx
  • 错误隐藏学习手记(五)

    在H 264的研究中 我们可以看到目前有三种开源编码 很多测试都是在一个开源编码中实现的 这个开源编码就叫做 JM86 在这里呢具体介绍一下这三种开源编码 一 三大开源编码器介绍 1 JM H 264的官方测试源码 由德国hhi研究所负责开
  • oracle提高数据移植速度.

    author skatetime 2008 07 21 提高数据移植速度 序列也能影响数据迁移的速度 1 测试表 test skate1 SQL gt select count from test skate1 COUNT 5841920