快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

ASP.NET中利用存储过程实现模糊查询

一、建立存储过程

  在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、对数据库的操作应该尽量将其封装到中间层(类库)中,这样即可以实现代码的重用,也方便以后的进行修改。


返回类别: 教程
上一教程: JIT编译
下一教程: .NET缓存初步

您可以阅读与"ASP.NET中利用存储过程实现模糊查询"相关的教程:
· ASP.NET中如何调用存储过程
· 在.net中调用存储过程的另一种方式
· 在.NET中调用存储过程
· ASP中是如何使用存储过程的
· 在ASP.Net中两种利用CSS实现多界面的方式
    微笑服务 优质保证 索取样品