ADO.NET數(shù)據(jù)類型ParameterDirection屬性簡(jiǎn)介
數(shù)據(jù)類型在編程中是基礎(chǔ)知識(shí),文章這里就配置參數(shù)和參數(shù)ADO.NET數(shù)據(jù)類型介紹。通過(guò)提供類型檢查和驗(yàn)證,命令對(duì)象可使用參數(shù)來(lái)將值傳遞給 SQL 語(yǔ)句或存儲(chǔ)過(guò)程。與命令文本不同,參數(shù)輸入被視為文本值,而不是可執(zhí)行代碼。這樣可幫助抵御“SQL 注入”攻擊,這種攻擊的攻擊者會(huì)將命令插入 SQL 語(yǔ)句,從而危及服務(wù)器的安全。
#T#ADO.NET數(shù)據(jù)類型參數(shù)化命令還可提高查詢執(zhí)行性能,因?yàn)樗鼈兛蓭椭鷶?shù)據(jù)庫(kù)服務(wù)器將傳入命令與適當(dāng)?shù)木彺娌樵冇?jì)劃進(jìn)行準(zhǔn)確匹配。有關(guān)更多信息,請(qǐng)參見 SQL Server 聯(lián)機(jī)叢書中的執(zhí)行計(jì)劃的緩存和重新使用和重用參數(shù)和執(zhí)行計(jì)劃。除具備安全和性能優(yōu)勢(shì)外,參數(shù)化命令還提供一種用于組織傳遞到數(shù)據(jù)源的值的便捷方法。DbParameter 對(duì)象可以通過(guò)使用其構(gòu)造函數(shù)來(lái)創(chuàng)建,或者也可以通過(guò)調(diào)用 DbParameterCollection 集合的 Add 方法以將該對(duì)象添加到 DbParameterCollection 來(lái)創(chuàng)建。Add 方法將構(gòu)造函數(shù)實(shí)參或現(xiàn)有形參對(duì)象用作輸入,具體取決于數(shù)據(jù)提供程序。
提供 ParameterDirection 屬性
在添加參數(shù)時(shí),您必須為輸入?yún)?shù)以外的參數(shù)提供一個(gè) ParameterDirection 屬性。下表顯示了可用于 ParameterDirection 枚舉的 ParameterDirection 值。
。
成員名稱 |
說(shuō)明 |
---|---|
該參數(shù)為輸入?yún)?shù)。這是默認(rèn)設(shè)置。 | |
該參數(shù)可執(zhí)行輸入和輸出。 | |
該參數(shù)為輸出參數(shù)。 | |
該參數(shù)表示從某操作(如存儲(chǔ)過(guò)程、內(nèi)置函數(shù)或用戶定義的函數(shù))返回的值。 |
ADO.NET數(shù)據(jù)類型使用參數(shù)占位符
參數(shù)占位符的語(yǔ)法取決于數(shù)據(jù)源。.NET Framework 數(shù)據(jù)提供程序處理命名和指定參數(shù)和參數(shù)占位符的方式各不相同。此語(yǔ)法是針對(duì)某個(gè)特定的數(shù)據(jù)源自定義的,如下表所述。
數(shù)據(jù)提供程序 |
參數(shù)命名語(yǔ)法 |
---|---|
以 @parametername 格式使用命名參數(shù)。 | |
使用由問(wèn)號(hào) (?) 表示的位置參數(shù)標(biāo)記。 | |
使用由問(wèn)號(hào) (?) 表示的位置參數(shù)標(biāo)記。 | |
以 :parmname(或 parmname)格式使用命名參數(shù)。 |