怎么有效果完成應用mysql的增刪改查技巧
發(fā)表時間:2023-07-13 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]1. 前言針對數(shù)據(jù)的增加、修改、刪除和查詢是應用軟件系統(tǒng)中最為常用的功能。作為軟件開發(fā)人員,如何高效的實現(xiàn)上述功能,并且能夠保證系統(tǒng)數(shù)據(jù)的正確性、規(guī)范性和有效性是非常重要的。本文結(jié)合自己在項目實踐...
1. 前言
針對數(shù)據(jù)的增加、修改、刪除和查詢是應用軟件系統(tǒng)中最為常用的功能。作為軟件開發(fā)人員,如何高效的實現(xiàn)上述功能,并且能夠保證系統(tǒng)數(shù)據(jù)的正確性、規(guī)范性和有效性是非常重要的。
本文結(jié)合自己在項目實踐中完成的增刪改查功能,分析和總結(jié)實現(xiàn)增刪改查功能的開發(fā)過程和方法,以便在后續(xù)的開發(fā)工作中較好的完成類似功能的開發(fā)。
2. 開發(fā)過程與方法
增加功能
增加功能主要是將用戶在頁面中錄入的數(shù)據(jù)項保存到數(shù)據(jù)表中對應的數(shù)據(jù)表字段中。
可以采用如下的步驟進行分析與實現(xiàn):
結(jié)合業(yè)務需要,分析頁面上需要用戶錄入哪些數(shù)據(jù)項?
需要錄入哪些數(shù)據(jù)項?
每一個數(shù)據(jù)項的錄入方式(文本框錄入、下拉列表錄入、checkbox錄入、radio錄入)和校驗規(guī)則(非空校驗、字段類型、字段長度、字段格式)是什么?
錄入數(shù)據(jù)項與數(shù)據(jù)表字段的對應關(guān)系(對應哪個數(shù)據(jù)表,哪個數(shù)據(jù)字段、)
頁面中的每一個數(shù)據(jù)項與哪個數(shù)據(jù)表的哪個字段相對應?
頁面錄入的數(shù)據(jù)項值是否需要轉(zhuǎn)換成數(shù)據(jù)庫字段的值?(比如將頁面中用戶錄入的是和否轉(zhuǎn)換成數(shù)據(jù)庫字段1和0)
后臺保存數(shù)據(jù)時,按照如下的步驟處理:
若數(shù)據(jù)校驗不正確,則提示出哪些數(shù)據(jù)項格式不正確,需要如何填寫為正確的格式。
若保存失敗,則將失敗的原因提示給用戶,便于用戶修改之后再次保存。
若保存成功,則將成功的操作結(jié)果反饋給用戶。
若保存異常,則提示用戶保存操作出現(xiàn)異常,請重試。
若頁面的VO數(shù)據(jù)只對應一張數(shù)據(jù)表,則直接保存到一張數(shù)據(jù)表即可。
若頁面的VO數(shù)據(jù)需要保存到數(shù)據(jù)庫中的多張數(shù)據(jù)表時,需要采用事務管理機制控制數(shù)據(jù)保存操作的完整性,防止出現(xiàn)一部分表保存成功;一部分保存失敗的情況。
若已經(jīng)存在重復的記錄,則將重復的信息反饋給用戶
若沒有重復的記錄,則執(zhí)行如下的保存步驟。
首先,需要接收頁面錄入的數(shù)據(jù)項,然后校驗數(shù)據(jù)項的合法性和有效性(類型、長度),并將
然后,結(jié)合數(shù)據(jù)的唯一性規(guī)則,判定是否已經(jīng)存在重復的數(shù)據(jù)記錄;
接著,實現(xiàn)頁面VO數(shù)據(jù)項與持久化對象PO的轉(zhuǎn)換:將用戶在頁面上錄入的VO數(shù)據(jù)項轉(zhuǎn)換成數(shù)據(jù)庫實體對象,并調(diào)用相應的主鍵生成規(guī)則,生成數(shù)據(jù)庫實體對象的主鍵字段和其他與業(yè)務無關(guān),但是需要保存到數(shù)據(jù)庫中的字段值;執(zhí)行如下的保存操作:
最后,將保存操作的處理結(jié)果反饋給用戶:
刪除功能
刪除功能主要是將用戶選擇的數(shù)據(jù)從數(shù)據(jù)庫中刪除,實現(xiàn)在頁面上看不到數(shù)據(jù)。
可以采用如下的方法分析和實現(xiàn):
分析刪除的實現(xiàn)方式:
采用硬刪除(直接將數(shù)據(jù)從數(shù)據(jù)庫中刪除)還是軟刪除方式(通過標識位標識數(shù)據(jù)已經(jīng)刪除)
分層刪除的級聯(lián)數(shù)據(jù):
頁面上操作刪除的數(shù)據(jù),是否存在記錄刪除的情況:刪除一張數(shù)據(jù)表的一條數(shù)據(jù),同時將另外一張數(shù)據(jù)表中與該條記錄相關(guān)的數(shù)據(jù)記錄同時刪除掉。
分析刪除的操作方式:
依據(jù)數(shù)據(jù)記錄的哪個數(shù)據(jù)項進行刪除
支持一次只能刪除一條數(shù)據(jù)
支持一次可以刪除多條數(shù)據(jù)
刪除操作的實現(xiàn)方法:
后臺獲取需要刪除的數(shù)據(jù)記錄的主鍵值,執(zhí)行刪除操作;若存在級聯(lián)刪除的情況,則需要在刪除當前表的數(shù)據(jù)記錄之后,同時刪除相關(guān)數(shù)據(jù)表中與該條記錄相關(guān)的數(shù)據(jù)記錄,確保數(shù)據(jù)庫中不出現(xiàn)無效的冗余數(shù)據(jù)。
批量刪除的情況,若其中一條數(shù)據(jù)刪除錯誤;則將該條記錄寫入提示信息中,繼續(xù)執(zhí)行后續(xù)數(shù)據(jù)記錄的刪除;
將刪除操作的處理結(jié)果反饋給操作用戶:
若刪除失敗,則反饋給刪除失敗的原因;
若刪除異常,則反饋異常的原因,提示用戶重試。
若刪除成功,則反饋操作成功的提示信息給用戶;
在查看數(shù)據(jù)時,將數(shù)據(jù)記錄的主鍵隱藏顯示到頁面上,
在選擇數(shù)據(jù)時,將選擇數(shù)據(jù)對應的主鍵保存起來
用戶點擊刪除按鈕時,首先提示用戶是否確認刪除,若用戶選擇確認刪除,則執(zhí)行如下的處理步驟:
在刪除成功之后,需要重新刷新頁面上的顯示數(shù)據(jù),將刪除的結(jié)果(刪除成功的數(shù)據(jù)不在顯示在頁面上)展示給用戶。
修改功能
修改功能主要是將針對數(shù)據(jù)庫中已有的數(shù)據(jù)項進行重新編輯,并將修改后的數(shù)據(jù)保存到數(shù)據(jù)庫中。
查詢功能
綜述所述,Web層的開發(fā)方法如下:
編寫頁面VO:分析Web顯示層需要提交哪些數(shù)據(jù)項、需要返回哪些結(jié)果數(shù)據(jù)項;將請求數(shù)據(jù)項和結(jié)果數(shù)據(jù)項統(tǒng)一封裝到頁面VO。在編碼實現(xiàn)時,頁面VO類是普通的Bean類,定義數(shù)據(jù)項并提供set和get方法即可。
編寫控制層Action:定義頁面VO對象;使用頁面VO對象接收Web顯示層提交的請求數(shù)據(jù);并將VO提交的請求數(shù)據(jù)轉(zhuǎn)換成數(shù)據(jù)傳輸對象,傳輸給Service層使用;接收服務層返回的處理結(jié)果;將處理結(jié)果返回的數(shù)據(jù)傳輸對象轉(zhuǎn)換成VO的結(jié)果數(shù)據(jù)項。
編寫Action配置文件:
建立顯示層請求與控制層之間的請求對應關(guān)系:通過在Action的配置文件中,配置Action信息建立頁面請求和Action之間的對應關(guān)系。
編寫顯示層頁面:
使用頁面VO接收用戶的請求數(shù)據(jù):將頁面中的表單名稱設(shè)置為與頁面VO的屬性名稱相同,保證頁面VO可以接收到請求數(shù)據(jù)。
設(shè)置請求對應的Action地址:針對提交請求的頁面按鈕,將請求的地址設(shè)置為Action地址,確?梢詫⒄埱筇峤坏綄。
接收返回的處理結(jié)果:接收請求返回的處理結(jié)果,依據(jù)處理結(jié)果進行相應的處理。
3. 總結(jié)
本文在分析Web顯示層和Web控制層主要功能的基礎(chǔ)上,對兩者之間的數(shù)據(jù)交互進行深入分析,并以數(shù)據(jù)交互為核心提出了Web層的開發(fā)方法,同時對Web層開發(fā)的注意事項進行總結(jié),對開發(fā)Web層功能具有較好的借鑒和指導。
以上就是如何有效實現(xiàn)應用mysql的增刪改查功能的詳細內(nèi)容,更多請關(guān)注php中文網(wǎng)其它相關(guān)文章!
學習教程快速掌握從入門到精通的SQL知識。