`

Oracle 大数据量数据生成器Data Generator的使用

 
阅读更多

 

转自:http://www.cnblogs.com/Automation_software/archive/2011/01/27/1946366.html

Oracle大数据量数据生成器Data Generator的使用

首先测试环境建立:dept

CREATETABLE dept

      ( deptno   NUMBER(6),

        dname    VARCHAR2(20),

        loc       VARCHAR2(20));

    以下实验就是像dept表中插入大量的数据。

数据生成器允许创建演示和测试数据。对于测试应用程序和查看它们怎样执行大量的数据,这很有帮助的。可以在PL/SQL Developer的工具菜单的下面找到数据生成器:Data Generator

基本上,定义由一个或多个表、要生成的记录数量和字段数据定义构成。左上部的按钮允许打开和保存定义。

 

在上面,可以看到提供的 dept演示,这个演示是为 dept表创建数据。在这一页中,发现有下列项目:

          •表 表的名称。

          •记录数 要生成的记录数。这可以是数字,也可以是象 10..100 这样的范围。

          •名称 字段名称。

          •类型 字段的数据类型。

          •大小 字段大小(在适当时)。对于数字字段,这将是数值范围、精度。

          •数据 字段数据的定义(见下面)。

          •主列 如果这个表是另一个表的明细,可以设置主列。对于每个已产生的记录,指定数量的明细记录将被生成。

我们可以使用添加现有表按钮来添加一个现有的表,还可以从对象浏览器中拖放一个表。

数据定义

数据定义决定了被生成的数据。如果要创建简单的字符,可以在两个方括号之间输入字符定义:[数据]

数据可以是下列预先确定的集的混合体:

          •  a: a..z (小写字符)

          •  A: A..Z (大写字符)

          •  @: A..Z  a..z (所有字符)

          •  #: A..Z  a..z  0..9 (所有字符和数字)

          •  *: #33..#126 (所有 ASCII 字符)

          •  0: 0..9 (所有数字)

          •  1: 1..9 (所有除了 0 之外的数字)

          •  9: 0..9 (所有数字)

 

例如:

[Aaa00] 生成字符串如: Gxe21Liy05 等。

还可以在两个单引号之间添加文字文本。

例如:

[AA '-' 1000] 生成字符串如:CX-4903 SY-1044 等。

在定义中空格字符是被忽略的,除非它们在引号中。

如果要一个字符重复许多次,可以在字符的后面两个括号之间添加次数(n)。还可以添加一个随机数(最小..最大)

例如:

[Aa(5..15) ' ' Aa(8..20)] 的结果就象这样:"Masfae Qwwecdsadif"

定义中的文字文本不必被装入到括号中。换句话说,['hello']  'hello' 是等效的。不带引号被输入的文本被认为是函数。

有几个特定的函数是可用的:

          Signal(Min, Max, Delta, Noise) 返回技术测定数据(象温度这样的)。Min(最小)和 Max(最大)决定了范围, Delta(△)为最大更改量,还可以添加一些 Noise(噪声)。例如:Signal(-10, 20, 0.1, 0.1)

          Random([Min], Max) 返回Min(最小)和 Max(最大)之间的随机数。如果只指定了 Max ,那么 Min 就被设为 0 。对于日期字段,可以输入Min(最小)和 Max(最大)的日期。

          Sequence(Start, [Inc], [WithinParent]) 返回序号。Start 为开始值,Inc 为增量(默认为 1)。对于明细表,可以再指定WithinParent 关键词来指出序列应该为每个父记录进行重新安排。

          List('item'(weight), 'item'(weight), ...) 随机地返回指定项目(item)之一。加权数(weight)可以被添加到两个括号之间,允许特定项目比其他项目出现的几率更大。 例如:List('CLERK'(50), 'SALESMAN'(30), 'MANAGER'(10))

List(select statement) 象前面的 List 函数,但项目是通过 SQL select statementselect 语句)返回的。

 Text([Style], MaxCharacters, [WordsPerLine, LinesPerParagraph]) 这个函数返回文本。可选择的 Style(字体)参数可以是LorumIpsum(默认)(怀疑是荷兰语。——译者姜华东注)、英语、德语或日语。它还可以是象 [aA] 这样的字符集,在这种情况下,词汇从指定的字符集中产生。 MaxCharacters 决定了生成的文本的最大大小,WordsPerLine  LinesPerParagraph 决定了行和段落的大小。指定的大小可以是指定的数字或范围(最小..最大)。

 File(path, path, ...) 从特定的路径(path)中随机地选择一个文件,并插入内容。允许输入二进制数据(象图片这样的)到数据库中。路径可以使用通配符,象 d:\images\*.bmp 这样的。

可以通过使用下列函数更改前面函数的文本结果:

          Uppercase()

          LowerCase()

          InitCaps()

例如:InitCaps( List(select ename from emp) )

还有几个预先定义的数据集可用于生成或多或少的真实数据。可以使用下列定义:

          Firstname 一般列表中的名

          Lastname 一般列表中的姓

          Company 公司名(现有公司的随机列表)

          Address1 地址行 1

          Address2 地址行 2

          ZIP 邮政编码

          City 城市

          State 

          Country 国家

          Email (被关联到 Firstname Lastname  Country

还有一些可用的实例自定义数据集:

          Components.Code 一般商品项目:商品代码

          Components.Description 商品描述(计算机部分)

          Components.Price 商品价格

          Elements.Name 化学元素(名称)

          Elements.Symbol 化学元素(符号)

这些数据集可以在 DataGenerator\UserData 目录中被找到,文件名为elements.txt  components.txt 。如果需要,可以添加自己的集。添加一个逗号分隔的文件很简单,在文件中第一行两个方括号之间保存着描述。可以通过指定文件名.描述来使用的文件中的数据,就象两个例子那样。

上面提及的所有函数和数据都可以添加到一起,例如:Random(10..99) + '-' + [A(4)] 。 +是可选的,但那中至少应该有一个空格作为分隔符。

 

选项

选项标签页允许设置一些首选项,特别是数据生成器的定义。可以指定一个日期的格式(与被 Random 函数使用的例子一样)。还可以指定在多少条记录之后需要提交(设为 0 是一完成就提交)。延迟首选项仅仅用于一些实时测试,这中需要数据以指定的速度被插入。

 

自定义部分允许定义或越过被用于 [数据定义的字符集。项目总是单个字符,值是一个或多个空格分隔的字符范围,就象这样:A..Z a..z 0..9 #200..#220 。例如,要定义一个十六进制的字符集,可以指定 H 为项目,0..9 A..F 为值。

初始化脚本部分允许指定在数据被插入到数据库中前应该被执行的 SQL 语句。在典型的情况下,这将是创建表或截短表、选择回滚段等的语句。多个语句需要用分号来分隔。

通过按左边首选项按钮,在默认的情况下,对于所有数据生成器的一般选项可以被定义。如果数据生成器定义中相应的首选项也被设置了,这些首选项将被否决。

 

生成数据

在左下方有三个按钮可用于生成实际的数据:

          •开始测试运行 这将在结果标签页上的表格中生成数据和显示结果。通过右键单击表格,可以以不同的格式导出这些结果。

          •创建数据为 SQL 生成数据为 SQL 脚本。这仅仅工作于不用文件功能添加来自文件的数据的情况下。

•在数据库中创建数据 生成数据到 Oracle 数据库中。

 

一些例子:

Sequence(1, 1)
Text(20, 20, 1)
Text(30, 30, 1)
Text(300, 10, 1)
Signal(2000,2013,13,0) '/' Signal(1,12,12,0) '/' Signal(1,28,28,0) ' ' Signal(00,23,23,0) ':' Signal(00,59,59,0) ':' Signal(00,59,59,0)
Text(2000, 8..12, 3..8)
Random(0, 10000)
SQL(systimestamp)
Random(1, 148)

分享到:
评论

相关推荐

    Oracle大数据量数据生成器

    Oracle大数据量数据生成器,Data_Generator,是一个实用工具,用于快速生成大量模拟真实的数据,这对于测试数据库性能、填充示例数据库或者进行数据仓库建模非常有用。在Oracle环境中,生成大量的测试数据可以帮助...

    Data Generator oracle 注册码:

    Data Generator for Oracle 是一款专为 Oracle 数据库设计的数据生成工具。它能够帮助用户在测试环境中快速生成大量真实且具有代表性的数据,这对于开发、测试以及演示场景非常重要。通过使用 Data Generator for ...

    Oracle创造测试数据

    在实际操作中,这可能涉及到使用SQL语句、PL/SQL过程、内置函数,甚至是专门的测试数据生成工具。 标签“源码”和“工具”暗示了可能涉及到编写自定义脚本或者利用现有的开源工具来实现测试数据的创建。例如,`us_...

    Oracle Code Generator

    Oracle Code Generator是一款专为Oracle数据库设计的代码生成工具,它能帮助开发者自动生成与数据库相关的各种编程代码,提高开发效率并减少错误。这个工具的主要功能是解析Oracle数据库的结构,包括表、视图、存储...

    oracle自动创建数据

    5. **Oracle Data Generator**:这是一个专门的第三方工具,可以生成大量模拟真实世界的测试数据。它提供丰富的数据类型和模板,使得数据生成工作更为便捷。 6. **DDL与DML操作**:通过动态执行DDL(数据定义语言)...

    gd数据生成

    在Oracle大数据量数据生成器Data Generator中,用户可以定义一系列参数来定制数据生成的过程。首先,你需要创建一个或多个表的定义,指定每个表要生成的记录数量。例如,对于`dept`表,你可以设置想要插入的记录数,...

    oracle测试工具 SwingBech

    Swingbench的核心组成部分包括数据生成器(Data Generator)、负载生成器(Load Generator)和监控工具(Monitor)。数据生成器负责创建和填充测试数据,负载生成器则用来模拟并发用户对数据库的读写操作,监控工具...

    IBM(原)数据生成器和源代码.rar

    IBM的数据生成器是一款强大的工具,主要用于测试和性能评估,它能快速生成大量模拟真实业务场景的数据。这款工具在IT行业中广泛应用于数据库填充、系统压力测试、数据仓库建模以及数据分析等多个领域。IBM Data ...

    Mybatis-Generator自动生成Dao、Model、Mapping相关文件,不依赖maven,直接生成

    总结来说,Mybatis-Generator是一款高效实用的代码生成工具,无论你的项目是否使用Maven,都能轻松集成并使用。它通过自动化的方式,帮助开发者节省了大量的手动编码时间,提升了开发效率,让开发者能更专注于业务...

    mybatis生成工具,根据表生成DAO、Mapper、Model,附命令

    标题提到的“mybatis生成工具”就是Mybatis Generator,它能够根据指定的数据库表生成相应的DAO(Data Access Object)、Mapper接口和XML配置文件,以及Model对象。这样开发者就不需要手动创建这些基础代码,从而...

    DTO代码自动生成器

    DTO(Data Transfer Object)代码自动生成器是一种工具,旨在帮助开发者快速、高效地根据数据库模型创建对应的Java实体类。在软件开发过程中,DTO通常用于在系统不同层之间传递数据,避免了直接暴露业务对象,降低了...

    NHibernate3.2 连接oracle自动生成数据库

    在本案例中,我们关注的是如何使用NHibernate 3.2版本连接Oracle数据库,并实现自动生成数据库结构。 首先,我们需要了解NHibernate的工作原理。ORM框架的主要目标是消除传统的SQL编程,通过提供一种面向对象的方式...

    EF DbContext Generator生成的实体注释的解决方案

    1. **使用T4模板定制**:EF DbContext Generator使用T4模板(Text Template Transformation Toolkit)进行代码生成。我们可以直接编辑位于项目中的`.tt`文件,修改模板代码来实现注释的插入。在模板中,可以找到生成...

    java自动生成dao 层mapper,以及model实体类文件 generator .

    该工具的核心原理是基于MyBatis Generator(MBG),一个强大的Java源码生成器,能够根据数据库表结构自动创建DAO、Mapper接口及XML配置文件,以及对应的Model实体类。MBG通过读取配置文件(generatorConfig.xml)来...

    Mybatis-Generator自动生成Dao、Model、Mapping相关文件

    Mybatis-Generator是一款强大的工具,它能够帮助Java开发者自动生成Mybatis框架中的DAO(Data Access Object)、Model对象以及Mapper XML映射文件,极大地提高了开发效率,减少了手动编写这些基础代码的工作量。...

    spring boot 代码生成方法块

    除了使用现成的代码生成工具外,开发者还可以根据项目需求编写自定义的Maven插件或Gradle任务来生成特定的代码块。这通常涉及解析数据库元数据,然后根据模板生成Java源文件。 总结,Spring Boot的代码生成方法块...

    mybatis-generator-gui.zip

    MyBatis Generator (MBG) 是一个强大的工具,它允许开发者自动生成MyBatis相关的代码,包括实体类、Mapper接口及XML配置文件、DAO层代码等。`mybatis-generator-gui.zip` 提供了一个图形用户界面(GUI)版本的MBG,...

    mybatis自动生成工具

    MyBatis Generator(MBG)是官方提供的一个代码生成工具,可以根据数据库表结构自动生成相应的Java类和XML配置文件。这包括数据对象DO类、Mapper接口及其实现类、XML映射文件等,大大简化了开发流程。通过MBG,...

    mybatis-generator-1.3.5.zip官方绿色版

    MyBatis Generator (MBG) 是一款强大的自动化代码生成工具,尤其在开发过程中能显著提高效率。它能够根据数据库表自动生成Java实体类、Mapper接口和XML配置文件,从而减少了手动编写这些重复代码的工作量。在给定的...

    Mybatis框架entity、dao、mapping代码自动生成工具

    本话题主要关注如何使用Mybatis-Generator工具来自动化生成Entity、DAO(Data Access Object)以及Mapping文件,从而减轻手动编写这些重复性工作的工作量。 **一、Mybatis-Generator简介** Mybatis-Generator是一个...

Global site tag (gtag.js) - Google Analytics