版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、批量數(shù)據(jù)智能處理工具作者:萬升級日期:2009-8-41 簡介:背景:在軟件開發(fā),測試時,都需要對相關表配置相應的數(shù)據(jù)。數(shù)據(jù)量小的時候還可以手工配置,對工作效率沒有太大的影響,但當需要配置的數(shù)據(jù)量較大時,就是一個令人頭疼的問題。配置起來相對麻煩得多?;ㄙM很多的時間,極大的影響工作效率,有時因沒有有效的數(shù)據(jù)支撐,影響到項目進度。這時我們就會想,要是有一個數(shù)據(jù)自動生成的小工具那該多好??!我也是深有體會。為此,為了解決大家共同的問題,在項目間隙期,擠出點時間來研究了一個數(shù)據(jù)自動生成,導入,導出的小工具。也希望能實實在在的給大家工作帶來方便。這個工具目前兼容ORACLE,INFORMX兩種數(shù)據(jù)庫,根據(jù)
2、輸入的表名,自動判斷表在數(shù)據(jù)庫中是否存在,并自動根據(jù)表結構,以及你的相關設置,智能的生成你需要的大量數(shù)據(jù)。可以把生成后的數(shù)據(jù)導出到本地保存,也可以把本的已有的數(shù)據(jù)直接導入到庫表中。在導入過程中,智能的判斷數(shù)據(jù)是否符合要求。此工具不僅支持直接連接數(shù)據(jù)庫運行,也可以獨立行動,同樣生成最有效的數(shù)據(jù)。在獨立運行模式下,操作跟數(shù)據(jù)庫模式下大體相同,這里只介紹數(shù)據(jù)庫模式下的操作。為滿足更多用戶的使用,還增加了對表的批量備份和恢復功能,在附加功能里面實現(xiàn)。下面是工具的主界面:目錄1 簡介:12 主要功能介紹31.1模糊查詢功能31.2獲取字段類型功能41.3獲取庫表主鍵功能41.4數(shù)據(jù)批量自動生成功能51.
3、5導出數(shù)據(jù)功能51.6數(shù)據(jù)導入功能61.7更新數(shù)據(jù)庫功能61.8指定列數(shù)據(jù)生成修改功能71.9附加功能83 獨立運行模式相關功能說明91.10在工具的主界面操作說明91.11在此模式下,對字段的操作101.12改變字段類型101.13刪除字段114 使用中的數(shù)據(jù)庫配置111.14配置連接數(shù)據(jù)115 操作指南:131.15使用前的準備131.16參數(shù)配置131.17連接數(shù)據(jù)庫131.18獲取表信息141.19任意配置,修改數(shù)據(jù)151.20自動生成數(shù)據(jù)161.21導出數(shù)據(jù)161.22導入數(shù)據(jù)161.23刪除數(shù)據(jù)171.24更新數(shù)據(jù)庫176 特殊說明:181.25優(yōu)點181.26不足之處。181.2
4、7相關申明187 結束語:198 使用過程中同事們發(fā)現(xiàn)的問題:199 使用場景221.28在下面描述場景中使用此工具,可以事半功倍,能很大提升工作效率。2210 相關制作界面222 主要功能介紹表模糊查詢功能,智能獲取字段類型,獲取庫表主鍵,智能生成批量數(shù)據(jù),導出數(shù)據(jù)功能,導入數(shù)據(jù)功能,更新數(shù)據(jù)庫功能,指定列數(shù)據(jù)生成修改功能,附加功能。1.1 模糊查詢功能當你記不清需要生成數(shù)據(jù)的表的全名時,此功能可以幫助你,只在輸入表名的其中幾個字母,系統(tǒng)智能的查找到你需要的表。大大節(jié)約時間。一般情況我們只能查找到當前用戶下的表。最左邊一欄是表名,中間一欄為當前登陸數(shù)據(jù)的用戶名,最后一欄是數(shù)據(jù)所在的表空間名(
5、表空間名在ORACLE下才會有)。如下圖:1.2 獲取字段類型功能工具可根據(jù)數(shù)據(jù)庫表中字段的類型顯示在界面上,使用我們對數(shù)據(jù)結構一目了然,對我們判斷生成的數(shù)據(jù)是否符合要求,需要生成什么樣的數(shù)據(jù),對修改數(shù)據(jù)起到關鍵作用。如下圖:1.3 獲取庫表主鍵功能此工具除了可以獲取數(shù)據(jù)類型,還可以智能的生成對應表的主鍵,這個功能有點復雜,ORACLE與INFORMIX存在很大差異。實現(xiàn)起來困難很大,特別是INFORMIX數(shù)據(jù),在獲取主鍵標志時,最后只能取得字段號,但通過修正后,基本可以滿足要求。有時可能不能生成主鍵,系統(tǒng)會給出相應提示。這時我們就要關注一下當前表的主鍵,可能需要手動修改。手動修改也很簡單。只
6、要選取對應行的主鍵列,通過下拉選項即時修改。主鍵自動生成如下圖所示:1.4 數(shù)據(jù)批量自動生成功能這一功能比較關鍵,能否生成正確的數(shù)據(jù)成失敗就在這里。大家也不要太擔心,這個功能我花了不少心思,可以根據(jù)自動生成的主鍵個數(shù),字段類型,最大長度限制,增加方式,設置的起始值,增加數(shù)。固定值等生成對應的數(shù)據(jù)。根據(jù)主鍵個數(shù)會智能的判斷,主鍵(聯(lián)合主鍵也會自動判斷)是否存在重復。固定值也會智能的根據(jù)字段限制的最大長度初始化為對應長度的值:如上圖的groupnumber字段的類型為char最大長度為20,固定值會自動初始化為20個0的字符串:” ”。如果是其它數(shù)據(jù)類型,初始化值為:888。ORACLE與INFO
7、RMIX數(shù)據(jù)類型存在不同,系統(tǒng)會自動判斷。我們也不用擔心。1.5 導出數(shù)據(jù)功能需要的寶貝數(shù)據(jù)終于生成后,我們需要的把它保存起來,以備后面使用,或在其它地方使用。這里提供了導出功能,把生成的數(shù)據(jù)導出到本地,以.unl格式保存。其中每一條數(shù)據(jù)的格式如:*|*|*|*|,默認情況下,數(shù)據(jù)間以”|”號分隔開。完全符合Unix,Linux ORACLE,INFORMIX數(shù)據(jù)導入格式。我們也可以根據(jù)實際情況選擇分隔符:“空格,&,TAB”三種。導入界面如下圖所示:1.6 數(shù)據(jù)導入功能除了把數(shù)據(jù)導出之外,我們也可以把符合條件的數(shù)據(jù),導入到我們的界面中,以供我們使用,批量修改等操作。導入過程對數(shù)據(jù)進行嚴格篩選
8、,只有我們指定的條件的數(shù)據(jù),才能導入進來。如果是聯(lián)合主鍵,系統(tǒng)會在導入過程智能的判斷,是否存在重復。1.7 更新數(shù)據(jù)庫功能這一功能非常重要,也非常關鍵。涉及到對數(shù)據(jù)庫表的中數(shù)據(jù)的修改,為了謹慎起見。在更新數(shù)據(jù)之前系統(tǒng)會有多道提示,如果數(shù)據(jù)庫中存在數(shù)據(jù),系統(tǒng)會提示你備份數(shù)據(jù)庫表中數(shù)據(jù)。以便更新失敗后可以恢復回來。如果當前表在數(shù)據(jù)庫中沒有數(shù)據(jù),會直接更新。同時會把已經(jīng)存在的數(shù)據(jù)顯示在窗口中,供我們參考。如下圖所示:在更新數(shù)據(jù)時,這里提供了兩種更新方式,一種是追加,另一種是覆蓋。如下圖所示:& 說明:其它人性化的設計在使用的時候會慢慢體會出來1.8 指定列數(shù)據(jù)生成修改功能此功能主要是對已經(jīng)存在的數(shù)據(jù)
9、,在保持其它列數(shù)據(jù)不變的情況下,對指定列進行修改。通過對列的選取,全選,反選功能操作多個列,如下圖所示:重點關注,紅線框內的數(shù)據(jù),上面框選擇的列,按右邊的,會彈出一個提示對話框,提醒你這樣做會修改被選中字段的數(shù)據(jù)。再按:,對應列的數(shù)據(jù)將被修改。此功能在不修改其它字段數(shù)據(jù)的情況下,改變少數(shù)幾列數(shù)據(jù)是很實用的。1.9 附加功能為滿足更多用戶的使用。特別增加了這一功能,類似于數(shù)據(jù)庫的備份與恢復。實現(xiàn)對數(shù)據(jù)庫全表的批量備份與恢復,對那些不知道當前需要備份哪些表的人來說,這是一個較為理解的解決辦法。這里也可以對單個表進行備份與恢復。這也是針對我們開發(fā),測試時搭建環(huán)境所加入的功能,經(jīng)常需要在多個項目,多套
10、環(huán)境平臺中配置相同的數(shù)據(jù),每次都在浪費不必要的時間,大大降低了工作效率。使用這一功能后,會節(jié)約很多的時間。只需要修改很少的數(shù)據(jù)就可以搭建一套新的環(huán)境。操作界面如下圖所示:3 獨立運行模式相關功能說明1.10 在工具的主界面操作說明直接點擊按鈕,系統(tǒng)將脫離數(shù)據(jù)連接,進入獨立運行模式。如下圖所示:1.11 在此模式下,對字段的操作點擊,用戶可以隨意定義,增加,刪除字段名,以及限制數(shù)據(jù)長度,主鍵等操作。如下圖所示:1.12 改變字段類型用戶可以在字段類型列上雙擊,彈出對話框,修改字段類型和長度。如下圖所示:1.13 刪除字段 不需要的字段可以用Alt+D組合鍵來刪除不需要的字段,刪除字段時,系統(tǒng)會高
11、亮提示,點擊,將刪除對應字段數(shù)據(jù),點擊不刪除,返回界面。如下圖所示:4 使用中的數(shù)據(jù)庫配置1.14 配置連接數(shù)據(jù)使用這個工具,我們還需要做一些工作,配置一些參數(shù),這些參數(shù)用于連接數(shù)據(jù)庫。目前支持有ORACLE 和 INFORMIX兩種配置。在使用數(shù)據(jù)庫模式時,我們需要先配置數(shù)據(jù)庫連接參數(shù),才能正確的連接到數(shù)據(jù)庫中。配置步驟:1、 在工具的主界面中點擊,進行數(shù)據(jù)庫配置界面,如下圖所示:2、可以增加,刪除,修改數(shù)據(jù)庫連接參數(shù)。也可雙擊對應數(shù)據(jù)列,查看對應連接信息。點擊時,新增數(shù)據(jù)庫連接信息。在對應欄中填入正確信息,再點擊,回到主窗口,再點擊,完成數(shù)據(jù)庫連接參數(shù)配置。如下圖所示:當然在配置這些參數(shù)前
12、,自己的PC機,還需要安裝對應數(shù)據(jù)庫的客戶端。否則就不能運行說明:DBMS 在INFORMIX中目前存在兩個版本號:IN9 INFORMIX-9和IN7 I-Net v7.x 5 操作指南:工具功能實用,操作簡單,界面友好,操作幾遍后就能熟練使用。1.15 使用前的準備1、如果使用的ORACLE數(shù)據(jù)庫,就需要安裝對應版本的數(shù)據(jù)庫客戶端,INFORMIX也是一樣的。并配置客戶端,這里就不介紹如果配置,請參閱ORACLE,INFORMIX客戶端安裝文檔。1.16 參數(shù)配置1、數(shù)據(jù)庫客戶端配置好后,我們就可以為此工具配置所需要的數(shù)據(jù)。1.9 配置連接數(shù)據(jù)說明指導,完成數(shù)據(jù)庫連接配置。1.17 連接數(shù)
13、據(jù)庫1、 參數(shù)配置完后,我們就可以運行此工具,點擊:datatool.exe文件進入【數(shù)據(jù)智能處理工具】界面。如下圖所示:2、 我們點擊按鈕,3、 自動連接到配置好的數(shù)據(jù)中,數(shù)據(jù)庫成功,會給出提示,如下圖。如果連接不成功,也會給出提示相關錯誤信息。1.18 獲取表信息1、 成功連接到數(shù)據(jù)庫后,我們就可以對數(shù)據(jù)庫存在表進行數(shù)據(jù)生成,導入操作。光標自動指向表名輸入框。2、 這里支持模糊查詢,只要輸入表名的前幾個字母,系統(tǒng)就會自動匹配,我們就可以用方向鍵或鼠標選擇對應的表名。如下圖所示:3、 選擇所要的表名后,我們只需按回車鍵,或在對應的表名上雙擊鼠標左鍵,就可以獲取到表名。4、 與此同時,在三個數(shù)
14、據(jù)窗口中都會顯示相關信息。在最上面的窗口中,顯示的是表的字段的信息如:數(shù)據(jù)類型,是否為主鍵,限制的長度等。另外還為生成更合理的數(shù)據(jù),增加了一些副加信息。如:增加方式,增加數(shù),起始值,固定值。這值會根據(jù)字段類型的不同自動匹配最合理的方式。最后面一列為標識列,被“”選中的例,表是被修改的列,否則就不被修改。如下圖所示:5、 在中間的窗口中,就是根據(jù)表結構自動生成的數(shù)據(jù)窗口,主要是用于生成數(shù)據(jù)時,顯示生成的所生成的數(shù)據(jù)。如下圖所示:6、 最下面一個窗口,是顯示此表在數(shù)據(jù)庫中已經(jīng)存在數(shù)據(jù)。用戶可以更直觀的參考其中的數(shù)據(jù),配置生成更合理的數(shù)據(jù)。如下圖所示:如果數(shù)據(jù)太多,看數(shù)據(jù)不方便,雙擊生成數(shù)據(jù)的窗口可
15、以放大窗口進行查看。如果數(shù)據(jù)太多,看數(shù)據(jù)不方便,雙擊數(shù)據(jù)檢索的小窗口,將窗口放大進行查看。1.19 任意配置,修改數(shù)據(jù)用戶可以根據(jù)自己對數(shù)據(jù)的要求,修改最每一個字段的數(shù)據(jù)配置,生成對應數(shù)據(jù),如果生成后的數(shù)據(jù),其中幾條不合理,只要修改幾條時也可以,在中間顯示生成數(shù)據(jù)的數(shù)據(jù)窗口中針對任意行任意列直接修改。1.20 自動生成數(shù)據(jù)1、 生成數(shù)據(jù)時,生成的數(shù)是有限制的,默認值為100條。上限為:10w條。設置條數(shù)2、 數(shù)據(jù)配置好后,我們期盼已久的數(shù)據(jù)終于可以生成了。點擊:按鈕,就自動生成數(shù)據(jù),在中間的數(shù)據(jù)窗口中就會顯示對應的數(shù)據(jù)。1.21 導出數(shù)據(jù)1、數(shù)據(jù)生成后,我們可以使用導出功能,把數(shù)據(jù)保存在本地,
16、以備后用。點擊:按鈕,將數(shù)據(jù)導出。導出的文件名自動以當前表名+當前日期為前綴,并以.unl為后綴。如下圖所示:1.22 導入數(shù)據(jù)1、 我們也可以把本地以.unl為后綴的文件中符合規(guī)范的數(shù)據(jù),導入進來。點擊:按鈕,就彈出導入對話框,選擇文件,進行導入操作。2、 在導入過程中還有兩步選擇,首先確定當前表是否為內存表,內存表是有條數(shù)了限制的。如果是內存表就會要求輸入限制條數(shù),默認為1000條。如下圖 3、下一步就會詢問你是在導入數(shù)據(jù)過程中,是否需要對數(shù)據(jù)進行有效性驗證。這里說明一下,對于導入大批量,多字段的數(shù)據(jù)來說,如果確定數(shù)據(jù)是正的,不校驗會節(jié)省大量的時間。如果導入數(shù)據(jù)的正確性不能確定,最好是校驗
17、一下。這里的校驗主要是針對主鍵(聯(lián)合主鍵也能校驗)是否存在重復。如果字段是數(shù)字型的也會校驗,對應數(shù)據(jù)不是字段類型,會報錯同時給出提示。字段串的字段,會對默認的長度進行校驗。例如字段類型為:varchar(128)的,工具會對對應的數(shù)據(jù)長度進行驗證,如果大于128位會報錯提示。1.23 刪除數(shù)據(jù) 1、刪除數(shù)據(jù),主要是對生成的數(shù)據(jù)中不需要的數(shù)據(jù)進行刪除操作。這里是直接刪除,不給出任何提示信息。1.24 更新數(shù)據(jù)庫1、 有了這一步,我們就不用再把.unl通過ftp上傳到服務器上,再通過load等數(shù)據(jù)導入命令,把文件中的數(shù)據(jù)導入到數(shù)據(jù)中。省去很多的工作。2、 更新數(shù)據(jù)庫是很危險的事,數(shù)據(jù)也是很敏感的。
18、安全起見,在更新之前,如果數(shù)據(jù)庫表中存在數(shù)據(jù),最好做一個備份。這里我也做一個備份功能,同時也給出備份提示的信息,默認需要備份,以wac_sysconfig表為例,如下圖所示:3、 如果當前表在數(shù)據(jù)庫中沒有記錄存在,就不會出現(xiàn)上面的提示信息,而是再現(xiàn)下面的信息,以sw_ctrltb表為例。4、 在做完上面的第二步操作時,就會出現(xiàn)下面的對話提示框。5、選擇覆蓋,數(shù)據(jù)庫中的數(shù)據(jù)會被當前生成的數(shù)據(jù)替換。選擇追加,當前生成的數(shù)據(jù)會添加到數(shù)據(jù)庫表中,不替換原有數(shù)據(jù)。點擊,執(zhí)行對應操作。點擊和,系統(tǒng)退出操作,不做任何處理。6 特殊說明:1.25 優(yōu)點1、 界面友好,簡潔,可操作性強。2、 不僅支持數(shù)據(jù)庫模式
19、,還以脫離數(shù)據(jù)庫獨立運行,并支持多種數(shù)據(jù)配置,自動生成數(shù)據(jù)。3、 功能全面,針對性強,對經(jīng)常批量處理,導入,導出,生成數(shù)據(jù)的用戶很實用。最大限度的滿足用戶需求。1.26 不足之處。1、工具對操作10w條以上數(shù)據(jù)的生成,導入有一定的弊端。可能需要花費很長的時間。也可能會出現(xiàn)想不到的結果,請留意1.27 相關申明1、 此工具由本人在項目空隙時間開發(fā),時間有限,存很多的不足之處,在使用過程中如出現(xiàn)不明錯或生成不合理的數(shù)據(jù)。請大家即時提出來,我即時更新,2、 在使用此工具時,請小心,特別是更新數(shù)據(jù)庫表時,由于操作不當,造成數(shù)據(jù)丟失,對于數(shù)據(jù)量大的時候更新數(shù)據(jù)庫,造成數(shù)據(jù)庫崩潰等情況,由使用者自己承擔。
20、3、在大家在使用過程中,如有更好的意見或建議,歡迎來電,發(fā)郵件,也可以直接跟我交流,完善此工具,更好的為大家服務。7 結束語:在開發(fā)此工具時得到很多同事支持和幫助,也得到領導的關心與鼓勵??梢哉f,這是大家的努力才能順利完成。也希望大家能夠提出更好更多的建議,使此工具更加完善。在今后的工作能幫助大家切切實實的提高工作效率。根據(jù)實際需要,綜合大家意見。會即時開發(fā)出下一代版本。8 使用過程中同事們發(fā)現(xiàn)的問題:1、 在配置數(shù)據(jù)庫連接參數(shù)時,不能修改其配置參數(shù)。 已經(jīng)解決2、 登陸時不需要再輸入用戶名和密碼。盡量使用操作簡單。已經(jīng)解決3、 使用自增加時,數(shù)據(jù)位數(shù)10位,就會出現(xiàn)負數(shù)的情 已經(jīng)解決這個是因為long類型的數(shù)據(jù)最大值是: 造成數(shù)據(jù)溢出。4、 對于聯(lián)合主鍵,其中一個主鍵是固值的時候。如何實現(xiàn) 已經(jīng)解決5、 導入超過5000條數(shù)據(jù)時,速度很慢。已經(jīng)解決6、 如果表在數(shù)據(jù)庫中的數(shù)據(jù)超過2000,就需要提示,是否顯示在窗口中 已經(jīng)解決7、同事提出的對數(shù)據(jù)庫表進行批量備份與恢復功能 目前也已經(jīng)完成。在附加功能里面實現(xiàn)問題與解決方案:1、 在連接數(shù)據(jù)庫時報下
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年阿克蘇市面向社會公開招聘警務輔助人員備考題庫附答案詳解
- 2026中能建城市投資發(fā)展有限公司校園招聘考試核心題庫及答案解析
- 基于物聯(lián)網(wǎng)技術的2025年跨境數(shù)字版權交易平臺開發(fā)可行性報告
- 清遠市公安局公開招聘警務輔助人員200人備考題庫及答案詳解參考
- 2025年巴西可再生能源發(fā)電政策調整與十年市場前景深度報告
- 中國雄安集團有限公司2026校園招聘考試重點題庫及答案解析
- 2026中國農業(yè)科學院第一批招聘18人(油料作物研究所)考試重點題庫及答案解析
- 2025年高端白酒十年品牌價值分析報告
- 2025年湖州市長興縣公立醫(yī)院公開引進高層次人才10人備考核心試題附答案解析
- 2025年中國人壽保險股份有限公司麗江分公司招聘人事助理、保單服務專員備考題庫帶答案詳解
- 瑞幸咖啡認證考試題庫(咖啡師)
- 品管圈PDCA改善案例-降低住院患者跌倒發(fā)生率
- 個體診所選址報告范文
- DB32T 3129-2016 適合機械化作業(yè)的單體鋼架塑料大棚技術規(guī)范
- 土方倒運的方案
- 2024光伏發(fā)電工程施工質量驗收規(guī)程
- 畫說學習通超星期末考試答案章節(jié)答案2024年
- 蘇教版一年級數(shù)學下冊全冊教案(完整版)教學設計含教學反思
- 全國職業(yè)院校技能大賽高職組(康復治療技術賽項)備賽試題庫(含答案)
- 《畜禽解剖生理》 課件 項目2.1 運動系統(tǒng)1
- 個人醫(yī)保承諾書模板
評論
0/150
提交評論