[發明專利]一種基于通信協議的數據庫數據批量更新方法有效
| 申請號: | 201110445417.5 | 申請日: | 2011-12-28 |
| 公開(公告)號: | CN102521409A | 公開(公告)日: | 2012-06-27 |
| 發明(設計)人: | 董亞輝;白蕓;劉淼;李健 | 申請(專利權)人: | 北京人大金倉信息技術股份有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30;H04L29/06 |
| 代理公司: | 北京汲智翼成知識產權代理事務所(普通合伙) 11381 | 代理人: | 陳曦;郭亞芳 |
| 地址: | 100085 北京市*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 通信協議 數據庫 數據 批量 更新 方法 | ||
1.一種基于通信協議的數據庫數據批量更新方法,客戶端和服務器端分別具有報文處理接口和套接字通信接口,其特征在于包括以下步驟:
步驟S1、所述客戶端與所述服務器建立SSL連接,
步驟S2、客戶端與數據庫服務器交互通信,完成數據的批量更新;
步驟S3、客戶端與數據庫服務器斷開SSL連接,
其中,在步驟S2中,通過預處理SQL語句,聲明一個PreparedStatement對象,用于在第一次執行SQL語句的過程中,將產生的SQL語句保存在服務器端,然后不斷地向這條SQL語句發送所需要的數據。
2.如權利要求1所述的基于通信協議的數據庫數據批量更新方法,其特征在于,
在步驟S2中,還包括以下步驟:調用數據庫系統中的語法分析模塊解析預處理SQL語句中的表名、列名和占位符,根據占位符信息構造并存儲批量更新值的數組。
3.如權利要求2所述的基于通信協議的數據庫數據批量更新方法,其特征在于,
在步驟S2中,還包括調用綁定參數的步驟:在調用綁定參數的過程中,把對應于所述占位符的相應值放入數組中的相應位置,
在批量提交更新數據時,根據數據表名找到對應的文件名,根據連接屬性中指定的文件編碼格式、行分隔符、列分隔符,決定寫入文件內容的格式。
4.如權利要求1所述的基于通信協議的數據庫數據批量更新方法,其特征在于,
在步驟S2中包括預處理步驟S21發送預處理語句,執行預處理操作:
客戶端向服務器發送報文“解析Parse(P)”,
數據庫服務器收到該報文后,對SQL語句進行解析,并生成查詢計劃,最后向客戶端發送報文“解析完成ParseComplete(1)”,
結束預處理操作。
5.如權利要求1所述的基于通信協議的數據庫數據批量更新方法,其特征在于,
在步驟S2中包括描述元信息的操作:
根據步驟S21的預處理結果,客戶端向服務器發送報文,報文內容包括準備語句標志、準備語句名稱或入口標志、入口名稱。
6.如權利要求1所述的基于通信協議的數據庫數據批量更新方法,其特征在于,
預處理語句報文的處理流程包括:
在步驟2101中,客戶端報文處理接口向客戶端套接字通信接口發送客戶端通信報文“解析Parse(P)”,預處理語句報文處理流程開始;
在步驟2102中,客戶端套接字通信接口向服務器套接字通信接口發送客戶端通信報文“同步Sync(S)”;
在步驟2103中,服務器套接字通信接口接受客戶端套接字通信接口發送的客戶端通信報文并轉給服務器報文處理接口,語句解析開始;
在步驟2104中,服務器報文處理接口判斷所接收的客戶端通信報文是否是空語句,如果不是空語句則進入步驟2105,如果是空語句則跳轉進入步驟2106;
在步驟2105中,服務器報文處理接口根據步驟2104的結果繼續判斷服務器報文處理接口接收到的客戶端通信報文是否有錯誤,如果沒有錯誤則進入步驟2107,如果有錯誤將跳轉進入步驟2108;
在步驟2106中,服務器報文處理接口根據步驟2104的結果向服務器套接字通信接口發送數據庫服務器通信報文“空語句EmptyQueryResponse(I)”,直接跳轉進入步驟2114;
在步驟2107中,服務器報文處理接口根據步驟2105的結果繼續判斷服務器報文處理接口接收到的客戶端通信報文是否有警告,如果有警告將跳轉進入步驟2110,如果沒有警告則進入步驟2109;
在步驟2108中,服務器報文處理接口根據步驟2105的結果向服務器套接字通信接口發送數據庫服務器通信報文“錯誤信息ErrorMessage(E)”,直接跳轉進入步驟2114。
在步驟2109中,服務器報文處理接口根據步驟2107的結果做出數據庫服務器通信報文“警告信息NoticeMessage(N)”,進入步驟2110;
在步驟2110中,服務器報文處理接口根據步驟2107或步驟2109的結果繼續判斷服務器報文處理接口接收到的客戶端通信報文是否有指定語句名稱,如果有指定語句名稱則進入步驟2112,如果有指定語句名稱將跳轉進入步驟2111;
在步驟2111中,服務器報文處理接口根據步驟2109的結果,按照指定的名稱生成PreparedStatement對象,進入步驟2113;
在步驟2112中,服務器報文處理接口根據步驟2109的結果,生成未命名的PreparedStatement對象,進入步驟2113;
在步驟2113中,服務器報文處理接口根據步驟2111或步驟2112的生成的語句向服務器套接字通信接口發送數據庫服務器通信報文“解析完成ParseComplete(1)”;
在步驟2114中,服務器套接字通信接口根據步驟2106、步驟2108、或步驟2113的結果向客戶端套接字通信接口發送數據庫服務器通信報文“準備就緒ReadyforQuery(Z)”;
在步驟2115中,客戶端套接字通信接口接收服務器套接字通信接口發送的數據庫服務器通信報文并轉給客戶端報文處理接口;
在步驟2116中,客戶端報文處理接口解析接收到的數據庫服務器通信報文,如果收到過E(錯誤信息)報文,則返回錯誤,如果沒有收到過E(錯誤信息)報文則返回成功,預處理語句報文處理流程結束。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京人大金倉信息技術股份有限公司,未經北京人大金倉信息技術股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110445417.5/1.html,轉載請聲明來源鉆瓜專利網。
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





