明輝手游網(wǎng)中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

怎么有效果完成應用mysql的增刪改查技巧

[摘要]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知識。