使用存储过程从web页面传递参数

转载 2005年04月26日 22:31:00

CREAT PROCEDURE sp_CustomersByState @region nvarchar(15)
AS
 select CustomerID,CompanyName from Customers
 where
region=@region Order by CompanyName
 RETURN

编写程序代码:

在C#代码中,我们将使用新的类,System.Data.SqlClient.Parameter。该类的对象设计用于表示存储过程中的参数,因此构造函数需要知道名称、数据类型和所讨论的参数的大小。

<%@ Import namespace="System.Data" %>
<%@ Import namespace="System.Data.SqlClient" %>

<html>
  <head><title>Using Stored Procedures With Parameters</title></head>
  <body>
    <form runat="server" method="post">
      Enter a State Code:
      <asp:Textbox id="txtRegion" runat="server" />
      <asp:Button id="btnSubmit" runat="server"
                  Text="Search" OnClick="Submit" />
      <br/><br/>
      <asp:DataGrid id="dgOutput" runat="server" />
    </form>
  </body>
</html>

<script language="c#" runat="server">
private void Submit(object sender, EventArgs e)
{
  String strConnection ="Server=224NUMECA;database=Northwind;user id=sa;password=sa";
  SqlConnection objConnection = new SqlConnection(strConnection);
  SqlCommand objCommand = new SqlCommand("sp_CustomersByState", objConnection);
  objCommand.CommandType = CommandType.StoredProcedure;

  SqlParameter objParameter = new SqlParameter("@region", SqlDbType.NVarChar, 15); 

/* 新建名为@region并声明为nvchar(15)的参数,它与存储过程中的声明相匹配。该版本的构造函数的第二个参数总是system.data.sqlDbType枚举的成员,该枚举有24个成员,表示您可能需要的所有数据类型的。*/
 

 objCommand.Parameters.Add(objParameter);

/* 第二行将参数添加到命令对象的Parameter集合,经常会忘记该操作 */


  objParameter.Direction = ParameterDirection.Input;

/* 设置参数对象的Direction属性,以决定它是否会用于将信息传递给存储过程,或接收来自它的信息。ParameterDirection.Input实际上就是该属性的默认值,但是从维护和可读性的观点出发,将它放入代码中是很有帮助的。 */


  objParameter.Value = txtRegion.Text;

/* 我们将参数的value属性设置为TxtRegion文本框的文本属性。 */

  objConnection.Open();

  objConnection.Open();

  dgOutput.DataSource = objCommand.ExecuteReader();
  dgOutput.DataBind();

  objConnection.Close();
}
</script>

SQL学习笔记[5] - 通过分隔符解析方式实现向SQL存储过程传递数组参数

通过分隔符解析方式实现向SQL存储过程传递数组参数,一维数组比较简单,这里实现二维数组....

解决SQL中in参数在存储过程中的传递问题

解决SQL中in参数在存储过程中的传递问题 CSDN中有这样一个帖子 地址:http://bbs.csdn.net/topics/110108650 问题: 比如有一个SQL SELECT ...

解决SQL中in参数在存储过程中的传递有关问题

问题: 比如有一个SQL SELECT * FROM SELTEXT WHERE ID IN (1,2,3,4)   我希望创建一个存储过程 比如: CREATE PROCEDURE [IN...
  • fdnike
  • fdnike
  • 2014年03月08日 23:54
  • 527

oracle 存储过程 函数 创建 删除 参数 传递 函数 查看 包 系统包

认识存储过程和函数 存储过程和函数也是一种PL/SQL块,是存入数据库的PL/SQL块。但存储过程和函数不同于已经介绍过的PL/SQL程序,我们通常把PL/SQL程序称为无名块,而存储过程和函数是...

asp.net中如何向存储过程传递参数

以前搞asp,近来开始学asp.net,学习的过程比较艰苦,尤其是刚入门时,摸不到头脑,都是自己在网上查资料,包括语法,ado.net,以及存储过程。 这里整理一个非常简单的小示例,作为初学者进门的...

asp.net调用输出参数存储过程

  • 2011年06月29日 11:38
  • 3KB
  • 下载

Oracle 使用OUT参数创建/调用存储过程

1.OUT类型的参数由存储过程传入值,然后由用户接受参数值。下面通过SCOTT.EMP表创建一个搜索过程,该过程将根据所提供的EMPNO列的值检索雇员的ENAME和SAL SQL> create or...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:使用存储过程从web页面传递参数
举报原因:
原因补充:

(最多只允许输入30个字)