這篇文章主要講解了“如何實現(xiàn)多條件查詢”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“如何實現(xiàn)多條件查詢”吧!
10年積累的成都網(wǎng)站設(shè)計、做網(wǎng)站經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先網(wǎng)站制作后付款的網(wǎng)站建設(shè)流程,更有麻山免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
而在對用戶進(jìn)行查詢時,也可能會使用到多種條件的查詢方式,如通過工號查詢、通過姓名查詢、通過性別查詢、通過學(xué)歷查詢等。也有可能會通過多種條件的組合查詢,如查學(xué)歷是大專的女員工等。
對于這種查詢情況,通常的作法是讓用戶輸入查詢條件,再進(jìn)行SQL語句組合來進(jìn)行查詢。如讓用戶輸入工號、姓名等,單擊提交按鈕之后,在后臺獲得這些信息,如以下代碼所示:
復(fù)制代碼 代碼如下:
//設(shè)置查詢語句
string strSql = "SELECT * FROM [user] where UserState=1 ";
//如果用戶名不為空則添加查詢條件
if (UserName!="")
{
strSql += "and (UserName'= "+UserName+"') ";
}
//如果性別不為空則添加查詢條件
if (Sex!="")
{
strSql += "and (Sex'= "+Sex+"') ";
}
在創(chuàng)建完SQL語句之后,執(zhí)行該語句獲得查詢結(jié)果。
這種是使用得最多并且是最不安全的方法,因為這是最容易讓別人SQL注入攻擊的一個方式。
如果想要避免SQL注入攻擊,可以將查詢語句寫在存儲過程中,然后使用SqlParameter將參數(shù)傳遞給存儲過程,但是,一個多條件查詢的存儲過程需要怎么寫呢?
其實,這個存儲過程并不難,可以使用以下方式:
復(fù)制代碼 代碼如下:
CREATE PROCEDURE [dbo].[UserCheck]
@UserId varchar(50) = null,
@UserName varchar(20) = null,
@RealName varchar(20) = null,
@Sex bit = null,
@JobTitle varchar(50) = null,
@Organ varchar(50) = null,
@IDCardType smallint = null,
@IDCard varchar(50) = null,
@Mobile varchar(50) = null
AS
BEGIN
select * from [user]
where UserId like case when @UserId is null then UserId else @UserId end
and UserName like case when @UserName is null then UserName else @UserName end
and RealName like case when @RealName is null then RealName else @RealName end
and Sex = case when @Sex is null then Sex else @Sex end
and JobTitle like case when @JobTitle is null then JobTitle else @JobTitle end
and Organ like case when @Organ is null then Organ else @Organ end
and IDCardType = case when @IDCardType is null then IDCardType else @IDCardType end
and IDCard like case when @IDCard is null then IDCard else @IDCard end
and Mobile like case when @Mobile is null then Mobile else @Mobile end
END
感謝各位的閱讀,以上就是“如何實現(xiàn)多條件查詢”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對如何實現(xiàn)多條件查詢這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識點(diǎn)的文章,歡迎關(guān)注!
文章名稱:如何實現(xiàn)多條件查詢
文章源于:http://jinyejixie.com/article14/gdpsge.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供、建站公司、網(wǎng)站設(shè)計、ChatGPT、云服務(wù)器、企業(yè)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)