翻譯|行業(yè)資訊|編輯:董玉霞|2022-08-23 11:58:31.310|閱讀 143 次
概述:本文主要介紹如何在Stimulsoft Report 設(shè)計(jì)中使用存儲(chǔ)過(guò)程。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
本文主要介紹如何在Stimulsoft Report 設(shè)計(jì)中使用存儲(chǔ)過(guò)程。
創(chuàng)建報(bào)表或儀表板時(shí),通常使用存儲(chǔ)過(guò)程來(lái)獲取數(shù)據(jù)。在本文中,我們將介紹如何為常用數(shù)據(jù)源調(diào)用存儲(chǔ)過(guò)程、使用存儲(chǔ)過(guò)程創(chuàng)建數(shù)據(jù)源的復(fù)雜性,以及如何向它們傳遞參數(shù)。
存儲(chǔ)過(guò)程是一條 SQL 指令,允許您按順序執(zhí)行一組不同的查詢。在創(chuàng)建報(bào)表和儀表板時(shí),當(dāng)相同的 SQL 查詢?cè)诟鞣N數(shù)據(jù)源中始終重復(fù)時(shí),使用起來(lái)非常方便。這就是為什么,例如,當(dāng)需要編輯某些查詢時(shí),應(yīng)該在所有報(bào)告中更改它們。在這種情況下,在存儲(chǔ)中創(chuàng)建存儲(chǔ)過(guò)程并在報(bào)表中創(chuàng)建數(shù)據(jù)源時(shí)僅調(diào)用此過(guò)程是合乎邏輯的。靈活使用是存儲(chǔ)過(guò)程的首要優(yōu)勢(shì)。
與簡(jiǎn)單的 SQL 指令序列相比,使用存儲(chǔ)過(guò)程可提高工作效率。這是因?yàn)檫^(guò)程代碼在數(shù)據(jù)存儲(chǔ)服務(wù)器上首次運(yùn)行時(shí)和以編譯形式保存后編譯一次。此外,使用存儲(chǔ)過(guò)程可顯著提高安全性。由于在通過(guò)網(wǎng)絡(luò)調(diào)用過(guò)程時(shí),您只能看到執(zhí)行該過(guò)程的調(diào)用。表和數(shù)據(jù)庫(kù)對(duì)象的名稱不可用,因此,執(zhí)行 SQL 注入要困難得多。
現(xiàn)在,我們將告訴您如何在報(bào)表中使用存儲(chǔ)過(guò)程。創(chuàng)建報(bào)表和儀表板時(shí),可以在編輯或創(chuàng)建存儲(chǔ)過(guò)程調(diào)用時(shí)在數(shù)據(jù)源編輯器中鍵入存儲(chǔ)過(guò)程調(diào)用的文本。在這種情況下,報(bào)表生成器引擎將在呈現(xiàn)將在具有數(shù)據(jù)存儲(chǔ)的服務(wù)器上處理的報(bào)表時(shí)使用存儲(chǔ)過(guò)程執(zhí)行查詢。因此,將形成一個(gè)包含數(shù)據(jù)的答案,該答案將返回到報(bào)告生成器。然后,這些數(shù)據(jù)將由報(bào)告生成器處理,并作為報(bào)告或儀表板顯示在查看器中。
在數(shù)據(jù)源中鍵入存儲(chǔ)過(guò)程調(diào)用的文本時(shí),調(diào)用的文本可以初始化為“查詢”或“存儲(chǔ)過(guò)程”。可以使用 Type 參數(shù)設(shè)置調(diào)用文本的初始化,同時(shí)選擇適當(dāng)?shù)闹底鳛椤安樵儭被颉按鎯?chǔ)過(guò)程”。
例如,如果某些調(diào)用文本是具有執(zhí)行存儲(chǔ)過(guò)程的命令的查詢,則整個(gè)調(diào)用文本應(yīng)初始化為 Query。因此,應(yīng)在存儲(chǔ)過(guò)程名稱之前指定特殊的存儲(chǔ)過(guò)程執(zhí)行命令。您可以在數(shù)據(jù)存儲(chǔ)規(guī)范中廣泛了解存儲(chǔ)過(guò)程執(zhí)行的命令。我們只是注意到,根據(jù)數(shù)據(jù)存儲(chǔ)的一種類型,存儲(chǔ)過(guò)程執(zhí)行的常見(jiàn)命令是 、 和 。
在創(chuàng)建數(shù)據(jù)源時(shí),僅執(zhí)行存儲(chǔ)過(guò)程。調(diào)用文本可以初始化為存儲(chǔ)過(guò)程。為此,在調(diào)用文本中,應(yīng)僅指定需要執(zhí)行的存儲(chǔ)過(guò)程的名稱。
調(diào)用存儲(chǔ)過(guò)程時(shí),可以傳遞參數(shù)。對(duì)存儲(chǔ)過(guò)程使用參數(shù)取決于將調(diào)用文本初始化為查詢或存儲(chǔ)過(guò)程。在將調(diào)用文本初始化為 Query 的情況下,參數(shù)由逗號(hào)分隔,并在參數(shù)名稱之前以特殊符號(hào)的形式指定前綴。例如。
如果將調(diào)用文本初始化為存儲(chǔ)過(guò)程,則應(yīng)在數(shù)據(jù)源中創(chuàng)建參數(shù),而不在文本中指定參數(shù)。這里最主要的是考慮參數(shù)在列表中的位置順序。它們將按順序應(yīng)用,從參數(shù)列表中觀察自上而下方向的順序。
此外,您還可以自動(dòng)獲取過(guò)程的必要參數(shù)列表。為此,應(yīng)在調(diào)用文本中指定過(guò)程的名稱,將 Type 參數(shù)設(shè)置為“存儲(chǔ)過(guò)程”,然后從“檢索列”菜單中選擇“檢索列和參數(shù)”命令。@exec StoredProcedureName @param1, @param2, @param3
在特定情況下,數(shù)據(jù)源只能支持未命名的參數(shù),例如 OleDB。在將調(diào)用文本初始化為 Query 的情況下,考慮列表中的參數(shù)序列非常重要。因此,查詢中的未命名參數(shù)由特殊符號(hào)表示,而不命名它們。
在創(chuàng)建報(bào)表和儀表板時(shí)使用存儲(chǔ)過(guò)程的情況,由用戶決定是使用查詢還是存儲(chǔ)過(guò)程,因?yàn)槊糠N情況都需要額外的考慮才能做出決定。Stimulsoft僅提供各種功能和工具,使創(chuàng)建報(bào)告和儀表板的過(guò)程更加靈活。
本文介紹了報(bào)表設(shè)計(jì)中使用存儲(chǔ)過(guò)程。更多Stimulsoft教程點(diǎn)擊查看。
加入官方社群,了解更多產(chǎn)品信息,互相交流。
QQ群號(hào):740060302
想要了解Stimulsoft價(jià)格信息的朋友,歡迎咨詢慧都官方客服。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@ke049m.cn