ASP.NET中利用預存程序實現模糊查詢

來源:互聯網
上載者:User

  一、建立預存程序

  在MSSQL中的Northwind資料庫中為employess表建立預存程序(作用按LastName進行模糊查詢):

CREATE PROCEDURE Employess_Sel @lastname nvarchar (20)
AS
select lastname from Employees where lastname like '%' + @lastname + '%'
GO

  二、表單設計

  1、建立ASP.NET Web應用程式,命名為WebSql,選擇儲存路徑然後點擊確定。

  2、向表單中添加一個Label、一個Textbox和一個Button按鈕,然後再添加一個DataGrid控制項,右擊DataGrid控制項選擇屬性產生器,然後在開啟的視窗中選擇列,去掉自動建立列前的對勾,再向選定列中添加一個繫結資料行將頁首設為LastName,將資料欄位設為LastName。點擊確定。

  三、建立中間資料層

  右擊解決方案,選擇建立-項目-類庫,名稱為ClaSQL,選擇儲存路徑然後點擊確定。在開啟的類庫中添加以下代碼:

Imports System.Data.SqlClient
Public Class Class1
 Dim scon As New SqlConnection("server=localhost;database=northwind;uid=sa;pwd=123")

 '建立一個進行查詢的過程
 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
  '定義一個資料配接器,並設定參數
  Dim sda As New SqlDataAdapter(scom)
  sda.SelectCommand.Parameters.Add("@lastname", SqlDbType.NVarChar).Value = lastname
  '定義一個資料集對象,並填充資料集
  Dim ds As New DataSet
  Try
   sda.Fill(ds)
  Catch ex As Exception
  End Try
  Return ds
  End Function
End Class

  四、引用中間資料層(類庫)

  在ClaSql項目上右擊,選擇產生,然後在WebSql項目的“引用”上右擊,選擇添加引用,再選擇項目,將ClaSql項目添加到選定的組件框中,然後點擊確定。

  五、WebForm1.aspx表單代碼設計

  開啟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
  '定義變數儲存文字框的輸入,出於安全的目的對其進行轉換
  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>")

  '建立一個新的類執行個體,並調用查詢過程綁定資料
  Dim myCla As New ClaSql.Class1

  DataGrid1.DataSource = myCla.Emp_Sel(lastname)
  DataGrid1.DataBind()
 End Sub
End Class

  六:注意事項

  出於安全等方面考慮,在對資料庫操作中應盡量採取以下措施:

  1、使用儲存過程

  2、不要使用SA賬戶

  3、要使用複雜賬戶的密碼

  4、對於資料的插入、刪除等盡量使用不同的賬戶來操作,並對每個不同賬戶只設定相應的插入或刪除等許可權

  5、對資料庫的操作應該盡量將其封裝到中介層(類庫)中,這樣即可以實現代碼的重用,也方便以後的進行修改。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.