日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Oracle大數(shù)據(jù)量數(shù)據(jù)生成器Data Generator的使用

系統(tǒng) 2039 0

首先測試環(huán)境建立: dept

CREATE TABLE dept

????? ( deptno ?? NUMBER ( 6 ),

????? ? dname ? ?? VARCHAR2 ( 20 ),

????? ? loc ? ? ??? VARCHAR2 ( 20 ));

??? 以下實(shí)驗(yàn)就是像 dept 表中插入大量的數(shù)據(jù)。

數(shù)據(jù)生成器允許創(chuàng)建演示和測試數(shù)據(jù)。對于測試應(yīng)用程序和查看它們怎樣執(zhí)行大量的數(shù)據(jù),這很有幫助的。可以在 PL/SQL Developer 的工具菜單的下面找到數(shù)據(jù)生成器: Data Generator

基本上,定義由一個或多個表、要生成的記錄數(shù)量和字段數(shù)據(jù)定義構(gòu)成。左上部的按鈕允許打開和保存定義。

Oracle大數(shù)據(jù)量數(shù)據(jù)生成器Data Generator的使用

?

在上面,可以看到提供的 dept 演示,這個演示是為 dept 表創(chuàng)建數(shù)據(jù)。在這一頁中,發(fā)現(xiàn)有下列項(xiàng)目:

????????? ?表 表的名稱。

????????? ?記錄數(shù) 要生成的記錄數(shù)。這可以是數(shù)字,也可以是象 10..100 這樣的范圍。

????????? ?名稱 字段名稱。

????????? ?類型 字段的數(shù)據(jù)類型。

????????? ?大小 字段大小(在適當(dāng)時)。對于數(shù)字字段,這將是數(shù)值范圍、精度。

????????? ?數(shù)據(jù) 字段數(shù)據(jù)的定義(見下面)。

????????? ?主列 如果這個表是另一個表的明細(xì),可以設(shè)置主列。對于每個已產(chǎn)生的記錄,指定數(shù)量的明細(xì)記錄將被生成。

我們可以使用 添加現(xiàn)有表 按鈕來添加一個現(xiàn)有的表,還可以從對象瀏覽器中拖放一個表。

數(shù)據(jù)定義

數(shù)據(jù)定義決定了被生成的數(shù)據(jù)。如果要創(chuàng)建簡單的字符,可以在兩個方括號之間輸入字符定義: [ 數(shù)據(jù) ]

數(shù)據(jù)可以是下列預(yù)先確定的集的混合體:

????????? ? ? a: a..z ( 小寫字符 )

????????? ? ? A: A..Z ( 大寫字符 )

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

????????? ? ? #: A..Z a..z 0..9 ( 所有字符和數(shù)字 )

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

????????? ? ? 0: 0..9 ( 所有數(shù)字 )

????????? ? ? 1: 1..9 ( 所有除了 0 之外的數(shù)字 )

????????? ? ? 9: 0..9 ( 所有數(shù)字 )

?

例如:

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

還可以在兩個單引號之間添加文字文本。

例如:

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

在定義中空格字符是被忽略的,除非它們在引號中。

如果要一個字符重復(fù)許多次,可以在字符的后面兩個括號之間添加次數(shù) (n) 。還可以添加一個隨機(jī)數(shù) ( 最小 .. 最大 )

例如:

[Aa(5..15) ' ' Aa(8..20)] 的結(jié)果就象這樣: "Masfae Qwwecdsadif"

定義中的文字文本不必被裝入到括號中。換句話說, ['hello'] 'hello' 是等效的。不帶引號被輸入的文本被認(rèn)為是函數(shù)。

有幾個特定的函數(shù)是可用的:

????????? ? Signal(Min, Max, Delta, Noise) 返回技術(shù)測定數(shù)據(jù)(象溫度這樣的)。 Min (最小)和 Max (最大)決定了范圍, Delta (△)為最大更改量,還可以添加一些 Noise (噪聲)。例如: Signal(-10, 20, 0.1, 0.1)

????????? ? Random([Min], Max) 返回 Min (最小)和 Max (最大)之間的隨機(jī)數(shù)。如果只指定了 Max ,那么 Min 就被設(shè)為 0 。對于日期字段,可以輸入 Min (最小)和 Max (最大)的日期。

????????? ? Sequence(Start, [Inc], [WithinParent]) 返回序號。 Start 為開始值, Inc 為增量(默認(rèn)為 1 )。對于明細(xì)表,可以再指定 WithinParent 關(guān)鍵詞來指出序列應(yīng)該為每個父記錄進(jìn)行重新安排。

????????? ? List('item'(weight), 'item'(weight), ...) 隨機(jī)地返回指定項(xiàng)目( item )之一。加權(quán)數(shù)( weight )可以被添加到兩個括號之間,允許特定項(xiàng)目比其他項(xiàng)目出現(xiàn)的幾率更大。 例如: List('CLERK'(50), 'SALESMAN'(30), 'MANAGER'(10))

? List(select statement) 象前面的 List 函數(shù),但項(xiàng)目是通過 SQL select statement select 語句)返回的。

? Text([Style], MaxCharacters, [WordsPerLine, LinesPerParagraph]) 這個函數(shù)返回文本。可選擇的 Style (字體)參數(shù)可以是 LorumIpsum (默認(rèn))(懷疑是荷蘭語。 —— 譯者姜華東注)、英語、德語或日語。它還可以是象 [aA] 這樣的字符集,在這種情況下,詞匯從指定的字符集中產(chǎn)生。 MaxCharacters 決定了生成的文本的最大大小, WordsPerLine LinesPerParagraph 決定了行和段落的大小。指定的大小可以是指定的數(shù)字或范圍(最小 .. 最大)。

? File(path, path, ...) 從特定的路徑( path )中隨機(jī)地選擇一個文件,并插入內(nèi)容。允許輸入二進(jìn)制數(shù)據(jù)(象圖片這樣的)到數(shù)據(jù)庫中。路徑可以使用通配符,象 d:\images\*.bmp 這樣的。

可以通過使用下列函數(shù)更改前面函數(shù)的文本結(jié)果:

????????? ? Uppercase()

????????? ? LowerCase()

????????? ? InitCaps()

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

還有幾個預(yù)先定義的數(shù)據(jù)集可用于生成或多或少的真實(shí)數(shù)據(jù)。可以使用下列定義:

????????? ? Firstname 一般列表中的名

????????? ? Lastname 一般列表中的姓

????????? ? Company 公司名(現(xiàn)有公司的隨機(jī)列表)

????????? ? Address1 地址行 1

????????? ? Address2 地址行 2

????????? ? ZIP 郵政編碼

????????? ? City 城市

????????? ? State

????????? ? Country 國家

????????? ? Email (被關(guān)聯(lián)到 Firstname Lastname Country

還有一些可用的實(shí)例自定義數(shù)據(jù)集:

????????? ? Components.Code 一般商品項(xiàng)目:商品代碼

????????? ? Components.Description 商品描述(計(jì)算機(jī)部分)

????????? ? Components.Price 商品價格

????????? ? Elements.Name 化學(xué)元素(名稱)

????????? ? Elements.Symbol 化學(xué)元素(符號)

這些數(shù)據(jù)集可以在 DataGenerator\UserData 目錄中被找到,文件名為 elements.txt components.txt 。如果需要,可以添加自己的集。添加一個逗號分隔的文件很簡單,在文件中第一行兩個方括號之間保存著描述。可以通過指定 文件名 . 描述 來使用的文件中的數(shù)據(jù),就象兩個例子那樣。

上面提及的所有函數(shù)和數(shù)據(jù)都可以添加到一起,例如: Random(10..99) + '-' + [A(4)] + 是可選的,但那中至少應(yīng)該有一個空格作為分隔符。

?

選項(xiàng)

選項(xiàng)標(biāo)簽頁允許設(shè)置一些首選項(xiàng),特別是數(shù)據(jù)生成器的定義。可以指定一個日期的格式(與被 Random 函數(shù)使用的例子一樣)。還可以指定在多少條記錄之后需要提交(設(shè)為 0 是一完成就提交)。延遲首選項(xiàng)僅僅用于一些實(shí)時測試,這中需要數(shù)據(jù)以指定的速度被插入。

Oracle大數(shù)據(jù)量數(shù)據(jù)生成器Data Generator的使用

?

自定義部分允許定義或越過被用于 [ 數(shù)據(jù) ] 定義的字符集。項(xiàng)目總是單個字符,值是一個或多個空格分隔的字符范圍,就象這樣: A..Z a..z 0..9 #200..#220 。例如,要定義一個十六進(jìn)制的字符集,可以指定 H 為項(xiàng)目, 0..9 A..F 為值。

初始化腳本 部分允許指定在數(shù)據(jù)被插入到數(shù)據(jù)庫中前應(yīng)該被執(zhí)行的 SQL 語句。在典型的情況下,這將是創(chuàng)建表或截短表、選擇回滾段等的語句。多個語句需要用分號來分隔。

通過按左邊首選項(xiàng)按鈕,在默認(rèn)的情況下,對于所有數(shù)據(jù)生成器的一般選項(xiàng)可以被定義。如果數(shù)據(jù)生成器定義中相應(yīng)的首選項(xiàng)也被設(shè)置了,這些首選項(xiàng)將被否決。

?

生成數(shù)據(jù)

在左下方有三個按鈕可用于生成實(shí)際的數(shù)據(jù):

????????? ?開始測試運(yùn)行 這將在結(jié)果標(biāo)簽頁上的表格中生成數(shù)據(jù)和顯示結(jié)果。通過右鍵單擊表格,可以以不同的格式導(dǎo)出這些結(jié)果。

????????? ?創(chuàng)建數(shù)據(jù)為 SQL 生成數(shù)據(jù)為 SQL 腳本。這僅僅工作于不用文件功能添加來自文件的數(shù)據(jù)的情況下。

?在數(shù)據(jù)庫中創(chuàng)建數(shù)據(jù) 生成數(shù)據(jù)到 Oracle 數(shù)據(jù)庫中。

Oracle大數(shù)據(jù)量數(shù)據(jù)生成器Data Generator的使用


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 洮南市| 三明市| 永德县| 宜宾县| 东港市| 济宁市| 融水| 永登县| 保定市| 香港| 盈江县| 平南县| 鄄城县| 南漳县| 徐州市| 奇台县| 佛山市| 镇沅| 新野县| 和硕县| 乳山市| 楚雄市| 宁武县| 德庆县| 咸宁市| 合肥市| 马山县| 临沧市| 遂川县| 宜黄县| 五常市| 威远县| 河源市| 石首市| 肥城市| 叶城县| 乐陵市| 福建省| 东城区| 雅江县| 黄浦区|