資源描述:
《Access 2003:4.4、更新查詢?cè)O(shè)計(jì).ppt》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。
1、4.4更新查詢?cè)O(shè)計(jì)4.4.1、更新查詢的作用4.4.2、更新查詢的設(shè)計(jì)4.4.3、更新查詢的實(shí)質(zhì)如果需要對(duì)數(shù)據(jù)表中的某些數(shù)據(jù)進(jìn)行有規(guī)律地成批更新替換操作,就可以使用更新查詢來實(shí)現(xiàn)。如果讀者曾經(jīng)學(xué)習(xí)過xBase一類的數(shù)據(jù)庫(kù)系統(tǒng)工具,可以理解為:Access2003中的更新查詢相當(dāng)于xBase中的Replace語句的功能。例如,現(xiàn)需要在CMMIS數(shù)據(jù)庫(kù)中將所有商品的銷售單價(jià)高于6元的那些商品的銷售單價(jià)下調(diào)10%,如果在數(shù)據(jù)表視圖中采用手工操作,將是一件不可思議的事情。設(shè)計(jì)一個(gè)更新查詢就可以很方便地完成這樣的操作。4.4.1、更新查詢的作用首先,創(chuàng)建一個(gè)選擇查詢,指定其數(shù)據(jù)源為需要更新其中數(shù)據(jù)的表對(duì)
2、象。接著,將其中需要更新數(shù)據(jù)的字段逐一拖曳至查詢?cè)O(shè)計(jì)視圖的“字段”行中。然后,單擊菜單欄上的【查詢】
3、【更新查詢】,可以看到在查詢?cè)O(shè)計(jì)視圖中新增一個(gè)“更新到”行。此時(shí),需要在該行中填入數(shù)據(jù)更新的規(guī)則,例如“銷售單價(jià)*0.9”。如果只是需要更新某些滿足一定條件的記錄中的數(shù)據(jù),則應(yīng)該在查詢?cè)O(shè)計(jì)視圖的“Where”行中填寫記錄更新條件,例如“銷售單價(jià)>6元”。最后,保存這個(gè)查詢對(duì)象,即完成了一個(gè)更新查詢對(duì)象的設(shè)計(jì)操作。只需運(yùn)行該查詢對(duì)象,數(shù)據(jù)源表中的相關(guān)數(shù)據(jù)就按照數(shù)據(jù)更新規(guī)則得到了更新。4.4.2、更新查詢的設(shè)計(jì)首先,創(chuàng)建一個(gè)選擇查詢,指定其數(shù)據(jù)源為需要更新其中數(shù)據(jù)的表對(duì)象。接著,將其中需要更新數(shù)據(jù)
4、的字段逐一拖曳至查詢?cè)O(shè)計(jì)視圖的“字段”行中。然后,單擊菜單欄上的【查詢】
5、【更新查詢】,可以看到在查詢?cè)O(shè)計(jì)視圖中新增一個(gè)“更新到”行。此時(shí),需要在該行中填入數(shù)據(jù)更新的規(guī)則,例如“銷售單價(jià)*0.9”。如果只是需要更新某些滿足一定條件的記錄中的數(shù)據(jù),則應(yīng)該在查詢?cè)O(shè)計(jì)視圖的“Where”行中填寫記錄更新條件,例如“銷售單價(jià)>6元”。最后,保存這個(gè)查詢對(duì)象,即完成了一個(gè)更新查詢對(duì)象的設(shè)計(jì)操作。只需運(yùn)行該查詢對(duì)象,數(shù)據(jù)源表中的相關(guān)數(shù)據(jù)就按照數(shù)據(jù)更新規(guī)則得到了更新。新建一個(gè)選擇查詢,指定數(shù)據(jù)源為“柜存數(shù)據(jù)記錄”表,將“柜存數(shù)據(jù)記錄”表中字段“銷售單價(jià)”拖曳至“字段”行中,單擊菜單欄上的【查詢】
6、【更新查詢
7、】。在“更新到”行中輸入計(jì)算更新規(guī)則“[柜存數(shù)據(jù)記錄]![銷售單價(jià)]*0.9”,在“準(zhǔn)則”行中輸入計(jì)算更新條件“>6”(當(dāng)然也可以應(yīng)用向?qū)瓿蛇@兩行的規(guī)則輸入操作)。圖4-28所示為“銷售單價(jià)_更新查詢”的設(shè)計(jì)參數(shù)。圖4-17“銷售單價(jià)_更新查詢”設(shè)計(jì)參數(shù)設(shè)計(jì)完成一個(gè)更新查詢后,就可以打開它。與打開選擇查詢對(duì)象、交叉表查詢對(duì)象的情況不同,Access2003并不顯示查詢數(shù)據(jù)表視圖,而是根據(jù)指定的更新條件與計(jì)算更新規(guī)則,在數(shù)據(jù)庫(kù)中更新了數(shù)據(jù)源表中相關(guān)字段的數(shù)據(jù)。比如,“銷售單價(jià)_更新查詢”打開一次的結(jié)果,就將“柜存數(shù)據(jù)記錄”表中的“銷售單價(jià)”字段數(shù)據(jù)下調(diào)了10%,且只是改變那些原銷售單價(jià)高于6元
8、的記錄中的數(shù)據(jù)。圖4-18“柜存數(shù)據(jù)記錄”表更新前的數(shù)據(jù)圖4-19“柜存數(shù)據(jù)記錄”表更新后的數(shù)據(jù)查詢的實(shí)質(zhì)就是SQL語句的應(yīng)用。觀察“銷售單價(jià)_更新查詢”的SQL語句,就可以看到,“銷售單價(jià)_更新查詢”是一條用于數(shù)據(jù)庫(kù)數(shù)據(jù)更新的SQL語句:UPDATE柜存數(shù)據(jù)記錄SET柜存數(shù)據(jù)記錄.銷售單價(jià)=[柜存數(shù)據(jù)記錄]![銷售單價(jià)]*0.9WHERE(((柜存數(shù)據(jù)記錄.銷售單價(jià))>6));4.4.3、更新查詢的實(shí)質(zhì)