System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術涉及數據處理,尤其涉及一種多線程sql查詢與進度追蹤方法及系統。
技術介紹
1、結構化查詢語言(structured?query?language)簡稱sql,是一種特殊目的的編程語言,是一種數據庫查詢和程序設計語言,用于存取數據以及查詢、更新和管理關系數據庫系統。結構化查詢語言是高級的非過程化編程語言,允許用戶在高層數據結構上工作。它不要求用戶指定對數據的存放方法,也不需要用戶了解具體的數據存放方式,所以具有完全不同底層結構的不同數據庫系統,可以使用相同的結構化查詢語言作為數據輸入與管理的接口。結構化查詢語言語句可以嵌套,這使它具有極大的靈活性和強大的功能。
2、在當前的信息化時代,企業數據的管理與分析對于業務決策至關重要。然而,傳統的數據查詢與報表生成方式往往依賴于科技人員的手動操作,這不僅效率低下,而且容易出錯。具體來說,現有技術存在以下幾個方面的不足:
3、1)當前,許多企業中的業務人員需要頻繁地向科技人員提出數據查詢請求。科技人員根據請求編寫sql查詢語句,并在數據庫管理系統中執行,然后將結果返回給業務人員。這種人工取數的方式高度依賴科技人員的介入,不僅增加了科技人員的工作負擔,也延長了數據獲取的時間周期,降低了工作效率。
4、2)人工取數過程中,由于人為因素(如理解偏差、操作失誤等),可能導致查詢結果不符合業務規范,需要反復校對和修改,增加了數據處理的復雜性和錯誤率。
5、3)傳統的跑批查詢方式通常是在后臺執行,業務人員無法實時了解查詢進度,也無法預測查詢完成
技術實現思路
1、有鑒于此,有必要提供一種多線程sql查詢與進度追蹤方法,用以解決現有技術的上述缺陷。
2、為了解決上述問題,第一方面,本專利技術實施例提供一種多線程sql查詢與進度追蹤方法,包括:
3、網頁端接收用戶查詢請求,從sql配置表中查詢sql語句,并將查詢到的sql語句組裝成sql語句列表,調用sql多線程查詢接口;
4、調用sql多線程查詢接口,對sql語句列表中的每個sql語句分配一個線程進行查詢;
5、每個線程查詢結束后,將查詢結果插入查詢結果記錄表,并更新用戶查詢記錄表的查詢進度。
6、優選的,所述在網頁端接收用戶查詢請求,從sql配置表中查詢sql語句,并將查詢到的sql語句組裝成sql語句列表,包括:
7、在網頁端接收用戶查詢請求,將用戶查詢請求記錄在用戶查詢記錄表中;
8、調用sql組裝接口,根據用戶選擇的查詢選項從sql配置表中查詢sql語句,并將查詢到的sql語句組裝成sql語句列表;
9、更新用戶查詢記錄表的狀態為查詢中。
10、優選的,調用sql多線程查詢接口,對sql語句列表中的每個sql語句分配一個線程進行查詢后,還包括:
11、當所有線程查詢成功時,更新查詢結果記錄表的狀態為成功;
12、若任一查詢線程失敗,則更新用戶查詢記錄表的狀態為失敗,并將錯誤信息記錄到用戶查詢記錄表中,且用戶查詢記錄表的狀態不再更新為其他狀態。
13、優選的,當所有線程查詢成功時,所述方法還包括:
14、調用excel生成接口,根據查詢結果記錄表中的數據生成excel文件,并保存在服務器上。
15、將生成的excel文件在服務器上的地址更新到用戶查詢記錄表的相應字段。
16、優選的,還包括:
17、網頁端接收sql記錄查詢請求,調用sql記錄查詢接口,從用戶查詢記錄表中獲取用戶查詢記錄。
18、優選的,還包括:
19、調用excel生成接口,根據查詢結果記錄表中的數據生成excel文件,并保存在服務器上。
20、將生成的excel文件在服務器上的地址更新到用戶查詢記錄表的相應字段。
21、優選的,在根據查詢結果記錄表中的數據生成excel文件后,還包括:
22、網頁端接收excel下載請求,調用excel下載接口,在查詢結果記錄表中檢查用戶查詢請求的記錄狀態是否為成功,若是,則生成包含excel文件下載鏈接的json串并發送至網頁端。
23、優選的,所述sql多線程查詢接口在查詢過程中,通過更新用戶查詢記錄表的process字段來實時反映查詢進度;
24、將查詢任務分為多個線程,每個線程完成查詢后,按比例增加process的值。
25、第二方面,本專利技術實施例提供一種多線程sql查詢與進度追蹤系統,包括網頁端、后端服務器以及數據庫:
26、所述網頁端用于接收用戶查詢請求,顯示查詢進度以及查詢結果;
27、所述后端服務器包括:
28、用戶查詢接口,用于處理用戶查詢請求,調用sql組裝接口以組裝sql語句列表,調用sql多線程查詢接口以啟動多線程查詢;
29、sql組裝接口,用于根據用戶選擇的查詢選項從sql配置表中查詢sql語句,并將查詢到的sql語句組裝成sql語句列表;
30、sql多線程查詢接口,用于多線程執行sql查詢,更新查詢進度和查詢結果記錄表;
31、sql記錄查詢接口,用于根據用戶名,從用戶查詢記錄表中獲取用戶查詢記錄;
32、excel生成接口,用于根據查詢結果記錄表中的數據生成excel文件,并更新用戶查詢記錄表的文件路徑;
33、excel下載接口,用于提供所述excel文件的下載鏈接;
34、所述數據庫包括:
35、用戶查詢記錄表,用于存儲每一次用戶查詢操作的查詢記錄信息;其中,所述查詢記錄信息包括查詢編碼searchid、用戶名username、查詢狀態status、查詢進度process、查詢請求的創建時間create_time以及excel存儲路徑;
36、sql配置表,用于存儲可執行的sql語句及其配置信息;
37、查詢結果記錄表,用于存儲每一次用戶查詢操作的查詢結果。
38、第三方面,本專利技術還提供了一種電子設備,包括存儲器和處理器,其中,
39、所述存儲器,用于存儲程序;
40、所述處理器,與所述存儲器耦合,用于執行所述存儲器中存儲的所述程序,以實現如本專利技術第一方面實施例所述的多線程sql查詢與進度追蹤方法中的步驟。
41、第四方面,本專利技術還提供了一種計算機可讀存儲介質,用于存儲計算機可讀取的程序或指令,所述程序或指令被處理器執行時能夠實現如本專利技術第一方面實施例所述的多線程sql查詢與進度追蹤方法中的步驟。
42、本專利技術提供的多線程sql查詢與進度追蹤方法及系統,與現有技術相比,具有如下有益效果:
本文檔來自技高網...【技術保護點】
1.一種多線程SQL查詢與進度追蹤方法,其特征在于,包括:
2.根據權利要求1所述的多線程SQL查詢與進度追蹤方法,其特征在于,所述在網頁端接收用戶查詢請求,從SQL配置表中查詢SQL語句,并將查詢到的SQL語句組裝成SQL語句列表,包括:
3.根據權利要求1所述的多線程SQL查詢與進度追蹤方法,其特征在于,調用SQL多線程查詢接口,對SQL語句列表中的每個SQL語句分配一個線程進行查詢后,還包括:
4.根據權利要求3所述的多線程SQL查詢與進度追蹤方法,其特征在于,當所有線程查詢成功時,所述方法還包括:
5.根據權利要求1所述的多線程SQL查詢與進度追蹤方法,其特征在于,還包括:
6.根據權利要求4所述的多線程SQL查詢與進度追蹤方法,其特征在于,在根據查詢結果記錄表中的數據生成Excel文件后,還包括:
7.根據權利要求1所述的多線程SQL查詢與進度追蹤方法,其特征在于,所述SQL多線程查詢接口在查詢過程中,通過更新用戶查詢記錄表的process字段來實時反映查詢進度;
8.一種用于權利要求1
9.一種電子設備,
10.一種計算機可讀存儲介質,其特征在于,用于存儲計算機可讀取的程序或指令,所述程序或指令被處理器執行時能夠實現上述權利要求1至7中任意一項所述的多線程SQL查詢與進度追蹤方法中的步驟。
...【技術特征摘要】
1.一種多線程sql查詢與進度追蹤方法,其特征在于,包括:
2.根據權利要求1所述的多線程sql查詢與進度追蹤方法,其特征在于,所述在網頁端接收用戶查詢請求,從sql配置表中查詢sql語句,并將查詢到的sql語句組裝成sql語句列表,包括:
3.根據權利要求1所述的多線程sql查詢與進度追蹤方法,其特征在于,調用sql多線程查詢接口,對sql語句列表中的每個sql語句分配一個線程進行查詢后,還包括:
4.根據權利要求3所述的多線程sql查詢與進度追蹤方法,其特征在于,當所有線程查詢成功時,所述方法還包括:
5.根據權利要求1所述的多線程sql查詢與進度追蹤方法,其特征在于,還包括:
6.根據權利要求4所述的多...
【專利技術屬性】
技術研發人員:沈子航,張婷,賈萬博,卜振江,
申請(專利權)人:蘇銀凱基消費金融有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。