美章網(wǎng) 資料文庫 計算機信息監(jiān)管科技解析范文

計算機信息監(jiān)管科技解析范文

本站小編為你精心準備了計算機信息監(jiān)管科技解析參考范文,愿這些范文能點燃您思維的火花,激發(fā)您的寫作靈感。歡迎深入閱讀并收藏。

計算機信息監(jiān)管科技解析

1、綜合信息的查詢

目前,隨著工具軟件的發(fā)展和廣泛采用,使數(shù)據(jù)庫應(yīng)用系統(tǒng)的開發(fā)如虎添翼,其中PowerBuilder以其獨特的數(shù)據(jù)窗口(DataWindow)倍受歡迎。

PowerBuider是美國著名的數(shù)據(jù)庫應(yīng)用開發(fā)工具生產(chǎn)廠家Powersoft公司于1991年6月推出的功能強大、性能優(yōu)異的開發(fā)工具,它是一種面向?qū)ο蟮?、具有可視圖形界面的、快速的交互開發(fā)工具。智能化的數(shù)據(jù)窗口對象是其精華所在。利用此對象可以操作關(guān)系數(shù)據(jù)庫的數(shù)據(jù)而無需寫入SQL語句,即可以直接檢索、更新和用多種形式表現(xiàn)數(shù)據(jù)源中的數(shù)據(jù)。但要注意,必須使數(shù)據(jù)窗口成為窗口(Window)下數(shù)據(jù)窗口控制的一個連接對象,數(shù)據(jù)窗口才能使用戶在應(yīng)用執(zhí)行期間訪問數(shù)據(jù)庫中的數(shù)據(jù)。

利用PowerBuilder提供的內(nèi)部查詢機制,我們即可以讓數(shù)據(jù)窗口作為查詢條件的輸入,又可以讓該數(shù)據(jù)窗口作為查詢結(jié)果的輸出,這樣就可以使數(shù)據(jù)窗口中的所有數(shù)據(jù)項進行自由組合的查詢。例如:在窗口W_que上建立兩個數(shù)據(jù)窗口控制dw_1和dw_2,分別連接兩個數(shù)據(jù)窗口對象dw_que1與dw_que2,其中dw_1用于輸入查詢條件,而dw_2用于顯示滿足查詢條件的所有元組。事實上條件的輸入及元組的顯示完全可以在一個數(shù)據(jù)窗口中實現(xiàn),考慮到這兩種操作的差別(例:條件輸入可編輯,而元組顯示不可編輯;條件輸入可為某一范圍,而元組顯示僅為滿足條件的所有紀錄……)將其用兩個數(shù)據(jù)窗口控制來實現(xiàn)。這就要求dw_2與dw_1數(shù)據(jù)共享,即要求dw_que1與dw_que2兩數(shù)據(jù)窗口的數(shù)據(jù)源完全相同。

用這種方法實現(xiàn)查詢優(yōu)點突出,例:通過設(shè)置數(shù)據(jù)窗口中對應(yīng)列的編輯風格(EditStyles)為相應(yīng)的下拉式數(shù)據(jù)窗口(DropDownDataWindow),使顯示的元組文字化。注意,這要事先建好下拉式數(shù)據(jù)窗口。設(shè)置數(shù)據(jù)窗口中對應(yīng)列的編輯風格同樣可滿足其它顯示需要。利用數(shù)據(jù)窗口的風格特點:查詢表的列寬、列序可自由改變,甚至可以覆蓋掉一些列,以達到更滿足查詢顯示的需要。綜合查詢的信息來自多個表,改變數(shù)據(jù)窗口的數(shù)據(jù)源,采用多表連接的數(shù)據(jù)源即可實現(xiàn)。但是如我們問題的描述,如果我們需要的查詢項隨機地來自這43張表中的數(shù)據(jù)項,顯示項也是隨機地。這種任意條件的組合,可選輸出項的顯示稱為動態(tài)查詢(DynamicQuery)依然采用上述方法,數(shù)據(jù)窗口dw_que1與dw_que2的數(shù)據(jù)源將是這43張表的連接,先不說效率問題,單從這426個項中輸入查詢條件,又顯示這426個項,就使人敬而遠之。因為,在每一次查詢前,都不了解此次查詢的要求是什么,這樣,每張表中的每一個數(shù)據(jù)項都缺一不可;另一方面,每一次的查詢,一旦查詢條件確定、顯示條目也確定后,我們會發(fā)現(xiàn),每一次有意義的查詢并不是需要全部的43張表,換言之,每一次查詢沒有必要將43張表全部連結(jié),而應(yīng)只連接那些被選中數(shù)據(jù)項所在的表,即數(shù)據(jù)源是動態(tài)產(chǎn)生的。由于數(shù)據(jù)源不確定,數(shù)據(jù)窗口就無法設(shè)計,動態(tài)查詢無法用這種方法實現(xiàn)。

2、計算機動態(tài)查詢的實現(xiàn)

在某些實際的應(yīng)用系統(tǒng)開發(fā)中,由于用戶在開發(fā)前提不出查詢的需求,而在系統(tǒng)運行中希望能夠?qū)λ械臄?shù)據(jù)項任意組合進行查詢,以滿足來自多方的需求,實現(xiàn)動態(tài)地查詢(即隨機地從43張表中選擇數(shù)據(jù)項進行組合作為查詢條件并任意地選擇數(shù)據(jù)項作為顯示條目)。對于此類查詢的實現(xiàn)要利用PowerBuilder通過編程的方式在運行時動態(tài)地創(chuàng)建數(shù)據(jù)窗口,并動態(tài)地控制數(shù)據(jù)窗口。

動態(tài)地創(chuàng)建一個數(shù)據(jù)窗口,應(yīng)用程序需要執(zhí)行下列任務(wù):

動態(tài)地構(gòu)造SQL語句。用符合數(shù)據(jù)窗口語法的字符串,為現(xiàn)在的數(shù)據(jù)窗口控制創(chuàng)建一個數(shù)據(jù)窗口對象。具體實現(xiàn)如下:

2.1動態(tài)地生成SQL語句,根據(jù)SQL的語法:SELECTstringaFROMstringbWHEREstringc也就是動態(tài)地生成stringa,stringb,stringc.由用戶輸入要顯示的列,一旦輸入完畢,列名就隨之確定,將所有列名拼成一個“串”,中間用“,”分隔,形如“columm1,column2,column3,...,columnr”,則動態(tài)地生成stringa;同樣由用戶輸入查詢條件,包括相應(yīng)的列、滿足的條件或范圍、邏輯關(guān)系等,將這些條件拚成一個串,即為stringc,顯然,所有的列名都確定了,他們所在的表名也確定了,按照stringb的語法規(guī)則即可構(gòu)造。

注意:上面的stringc由兩部分(表間關(guān)系stringc1及查詢條件stringc2)組成;表名串stringb與表間關(guān)系stringc1、查詢條件stringc2及顯示條目stringa均有關(guān)。

在實現(xiàn)的過程中:為貼近實際應(yīng)用,習慣上,先輸入查詢條件,再輸入顯示條目。即在輸入查詢條件后,生成strinc2,stringb,stringc1;然后,再在輸入顯示條目后生成stringa,并修改stringc1,stringb。最后形成SQL語法:str="select"+stringa+"from"+stringb+"where"+stringcl+stringc2

2.2在現(xiàn)在的事物對象里利用相關(guān)的SyntaxFromSQL()函數(shù)生成符合數(shù)據(jù)窗口語法的字符串:exp=syntaxfromsq1(sq1ca,str,strsty,error)生成數(shù)據(jù)窗口的源代碼其中:strsty為數(shù)據(jù)窗口的顯示風格,例:

strsty="style(type=grid)datawindow(units=lcolor=12632256)text(font.face=''''system'''')"

2.3創(chuàng)建數(shù)據(jù)窗口對dw_que.create(exp)這樣就實現(xiàn)了用戶要求的隨機查詢。在真實系統(tǒng)中,用戶在輸入查詢條件時希望通過選項方式錄入查詢信息,由于庫表中存放的大量信息為代碼,這就需要在程序中先把錄入的文字信息轉(zhuǎn)化成相應(yīng)的代碼再連接到查詢條件中。為簡化輸入,提高準確性,可采用代碼輸入,即動態(tài)地嵌套下拉式數(shù)據(jù)窗口。在顯示查詢結(jié)果的數(shù)據(jù)窗口中,事先不能嵌套下拉式數(shù)據(jù)窗口,可預先做一個函數(shù),在程序運行中根據(jù)所選的列把代碼轉(zhuǎn)化成所對應(yīng)的漢字顯示,這樣更完善了用戶要求的隨機查詢。

根據(jù)數(shù)據(jù)窗口的動態(tài)特性,對于那些運行時才能確定的數(shù)據(jù)窗口采用動態(tài)方式創(chuàng)建,使應(yīng)用程序能更靈活地滿足用戶的需求。

3、總結(jié)

將查詢條件的輸入實現(xiàn)多級菜單選擇將查詢結(jié)果文字化,使復雜查詢問題解決得更完善。動態(tài)查詢的方法,不僅能應(yīng)用于人事管理信息系統(tǒng),同時也是解決其他需要復雜查詢的數(shù)據(jù)庫應(yīng)用系統(tǒng)的途徑。這種動態(tài)查詢方法的在數(shù)據(jù)庫應(yīng)用系統(tǒng)的使用,避免了應(yīng)用系統(tǒng)開發(fā)中開發(fā)者冥思苦想所有可能的查詢條件,而系統(tǒng)運行中用戶總遇到有些查詢要求無法滿足的矛盾。動態(tài)查詢的實現(xiàn),縮短了開發(fā)周期,減少了產(chǎn)品維護的工作。

主站蜘蛛池模板: 伊人电影综合网| 国产精品99在线观看| 丰满老熟好大bbb| 欧美videossex精品4k| 亚洲自偷自偷在线制服| 美女跪下吃j8羞羞漫画| 国产婷婷色综合av蜜臀av| 88国产精品视频一区二区三区| 嫩草影院www| 久久99精品久久只有精品| 最近中文字幕mv在线视频www| 亚洲第一页中文字幕| 粉嫩极品国产在线观看| 国产ssss在线观看极品| 黄色aaa级片| 国产精品亚洲专区无码不卡| 99久久er热在这里只有精品99| 怡红院视频在线| 久久99国产精品一区二区| 日韩精品无码一区二区三区AV| 亚洲国产成人久久77| 亚洲男人天堂2017| 综合久久久久久久综合网| 国产人妖cdmagnet| 国产色在线|亚洲| 国产精品免费看久久久| 97人伦影院a级毛片| 女人战争免费观看韩国| 丁香色欲久久久久久综合网| 日本h在线精品免费观看| 久久精品噜噜噜成人av| 朝鲜女**又多又黑毛片全免播放| 亚洲情a成黄在线观看| 污网址在线观看| 亚洲视频一区在线播放| 粗大的内捧猛烈进出视频| 午夜视频体验区| 美女激情视频网站| 国产91在线看| 芭蕉私人影院在线观看| 国产亚洲精久久久久久无码|