|
一、建立存儲過程
在MSSQL中的Northwind數(shù)據(jù)庫中為employess表新建存儲過程(作用按LastName進行模糊查詢):
CREATE PROCEDURE Employess_Sel @lastname nvarchar (20)
AS
select lastname from Employees where lastname like '%' + @lastname + '%'
GO
二、窗體設(shè)計
1、新建ASP.NET Web應(yīng)用程序,命名為WebSql,選擇保存路徑然后點擊確定。
2、向窗體中添加一個Label、一個Textbox和一個Button按鈕,然后再添加一個DataGrid控件,右擊DataGrid控件選擇屬性生成器,然后在打開的窗口中選擇列,去掉自動創(chuàng)建列前的對勾,再向選定列中添加一個綁定列將頁眉設(shè)為LastName,將數(shù)據(jù)字段設(shè)為LastName。點擊確定。
三、創(chuàng)建中間數(shù)據(jù)層
右擊解決方案,選擇新建-項目-類庫,名稱為ClaSQL,選擇保存路徑然后點擊確定。在打開的類庫中添加以下代碼:
Imports System.Data.SqlClient
Public Class Class1
Dim scon As New SqlConnection("server=localhost;database=northwind;uid=sa;pwd=123")
'創(chuàng)建一個進行查詢的過程
Public Function Emp_Sel(ByVal lastname As String) As DataSet
scon.Open()
scon.Close()
'定義命令對象,并使用儲存過程
Dim scom As New SqlCommand
scom.CommandType = CommandType.StoredProcedure
scom.CommandText = "Employess_Sel"
scom.Connection = scon
'定義一個數(shù)據(jù)適配器,并設(shè)置參數(shù)
Dim sda As New SqlDataAdapter(scom)
sda.SelectCommand.Parameters.Add("@lastname", SqlDbType.NVarChar).Value = lastname
'定義一個數(shù)據(jù)集對象,并填充數(shù)據(jù)集
Dim ds As New DataSet
Try
sda.Fill(ds)
Catch ex As Exception
End Try
Return ds
End Function
End Class
四、引用中間數(shù)據(jù)層(類庫)
在ClaSql項目上右擊,選擇生成,然后在WebSql項目的“引用”上右擊,選擇添加引用,再選擇項目,將ClaSql項目添加到選定的組件框中,然后點擊確定。
五、WebForm1.ASPx窗體代碼設(shè)計
打開WebSql項目下的WebForm1.ASPx文件,雙擊Button按鈕打開代碼窗口,完整的代碼如下:
Public Class WebForm1
Inherits System.Web.UI.Page
'窗體代碼略
'搜索按鈕事件
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'定義變量儲存文本框的輸入,出于安全的目的對其進行轉(zhuǎn)換
Dim lastname As String = TextBox1.Text
lastname = lastname.Replace("&", "&")
lastname = lastname.Replace("<", "")
lastname = lastname.Replace(">", "")
lastname = lastname.Replace("'", "'")
lastname = lastname.Replace("chr(13)", "<br>")
lastname = lastname.Replace("chr(10)", "<br>")
'創(chuàng)建一個新的類實例,并調(diào)用查詢過程綁定數(shù)據(jù)
Dim myCla As New ClaSql.Class1
DataGrid1.DataSource = myCla.Emp_Sel(lastname)
DataGrid1.DataBind()
End Sub
End Class
六:注意事項
出于安全等方面考慮,在對數(shù)據(jù)庫操作中應(yīng)盡量采取以下措施:
1、使用儲存過程
2、不要使用SA賬戶
3、要使用復(fù)雜賬戶的密碼
4、對于數(shù)據(jù)的插入、刪除等盡量使用不同的賬戶來操作,并對每個不同賬戶只設(shè)置相應(yīng)的插入或刪除等權(quán)限
5、對數(shù)據(jù)庫的操作應(yīng)該盡量將其封裝到中間層(類庫)中,這樣即可以實現(xiàn)代碼的重用,也方便以后的進行修改。
AspNet技術(shù):ASP.NET中利用存儲過程實現(xiàn)模糊查詢,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。