如何取到存储过程的输出参数? SqlParameter1.Direction=ParameterDirection.Output; 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 那输出的参数是不是在调用存储过程前把输出参数也add进去,~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~不用,尽管对应生成参数即可取值即可 <%@ Import Namespace="System.Data" %><%@ Import Namespace="System.Data.SqlClient" %><html> <script language="VB" runat="server"> Sub GetEmployees_Click(Sender As Object, E As EventArgs) Dim DS As DataSet Dim MyConnection As SqlConnection Dim MyCommand As SqlDataAdapter MyConnection = New SqlConnection("server=(local)\NetSDK;database=northwind;Trusted_Connection=yes") MyCommand = New SqlDataAdapter("SalesByCategory", MyConnection) MyCommand.SelectCommand.CommandType = CommandType.StoredProcedure MyCommand.SelectCommand.Parameters.Add(New SqlParameter("@CategoryName", SqlDbType.NVarChar, 15)) MyCommand.SelectCommand.Parameters("@CategoryName").Value = SelectCategory.Value MyCommand.SelectCommand.Parameters.Add(New SqlParameter("@OrdYear", SqlDbType.NVarChar, 4)) MyCommand.SelectCommand.Parameters("@OrdYear").Value = SelectYear.Value DS = new DataSet() MyCommand.Fill(DS, "销售额") MyDataGrid.DataSource=DS.Tables("销售额").DefaultView MyDataGrid.DataBind() End Sub</script><body style="font: 10.5pt 宋体"> <form runat="server"> <h3><font face="宋体">对 DataGrid 控件的参数化存储过程选择</font></h3> 选择类别: <select id="SelectCategory" runat="server"> <option>Beverages</option> <option>Condiments</option> <option>Confections</option> <option>Dairy Products</option> <option>Grains/Cereals</option> <option>Meat/Poultry</option> <option>Produce</option> <option>Seafood</option> </select> 选择年份: <select id="SelectYear" runat="server"> <option>1996</option> <option>1997</option> <option>1998</option> </select> <input type="submit" OnServerClick="GetEmployees_Click" Value="获取销售额" runat="server"/><p> <ASP:DataGrid id="MyDataGrid" runat="server" Width="650" BackColor="#ccccff" BorderColor="black" ShowFooter="false" CellPadding=3 CellSpacing="0" Font-Name="宋体" Font-Size="8pt" HeaderStyle-BackColor="#aaaadd" EnableViewState="false" /> </form></body></html> to acewang:取的方法用sqlReader去读还是用sqlCommand的Parameters去读? to acewang:你的存储过程是返回一个数据集的吧?我想返回过程的结果 to jupiterII我用你的方法,但运行有错误,提示:OCI-22060: 参数 [2] 是一个无效或未初始化的数值 代码:oraCmd.CommandText="Dt_CheckRoleType";oraCmd.CommandType=CommandType.StoredProcedure;oraCmd.Parameters.Clear();oraCmd.Parameters.Add("iRoleType",OracleType.Number,10);oraCmd.Parameters.Add("StrRoleDescript",OracleType.NVarChar,20);oraCmd.Parameters.Add("iRole",OracleType.Number,2);oraCmd.Parameters.Add("iOrgType",OracleType.Number,10);oraCmd.Parameters.Add("iResult",OracleType.Number,10); oraCmd.Parameters["iRoleType"].Value=iRoleId.ToString();oraCmd.Parameters["StrRoleDescript"].Value=txt_RoleDescript.Text.Trim();oraCmd.Parameters["iRole"].Value=txt_Role.Text.Trim();oraCmd.Parameters["iOrgType"].Value=ddl_OrgType.SelectedItem.Value.Trim();oraCmd.Parameters["iResult"].Direction=ParameterDirection.Output; IE8无法连接网络盘 用个登陆页面权限的问题!希望高手来解答下!非常着急啊 GridView的问题,高手熟手请进! datalist取值 ceiling函数能在access中用吗? 求助一种页面的实现 能不能这么做 Stream的问题 to icyer,帮忙看看dandelion的帖子"自定义datagrid分页事件遇到的问题"?拜托啦 菜鸟问题:如何取dataset中表的某个字段的值?? 如何在DataGrid中实现超级链接? 2个巨菜的问题,60分
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
不用,尽管对应生成参数即可取值即可
<%@ Import Namespace="System.Data.SqlClient" %><html>
<script language="VB" runat="server"> Sub GetEmployees_Click(Sender As Object, E As EventArgs) Dim DS As DataSet
Dim MyConnection As SqlConnection
Dim MyCommand As SqlDataAdapter MyConnection = New SqlConnection("server=(local)\NetSDK;database=northwind;Trusted_Connection=yes")
MyCommand = New SqlDataAdapter("SalesByCategory", MyConnection) MyCommand.SelectCommand.CommandType = CommandType.StoredProcedure MyCommand.SelectCommand.Parameters.Add(New SqlParameter("@CategoryName", SqlDbType.NVarChar, 15))
MyCommand.SelectCommand.Parameters("@CategoryName").Value = SelectCategory.Value MyCommand.SelectCommand.Parameters.Add(New SqlParameter("@OrdYear", SqlDbType.NVarChar, 4))
MyCommand.SelectCommand.Parameters("@OrdYear").Value = SelectYear.Value DS = new DataSet()
MyCommand.Fill(DS, "销售额") MyDataGrid.DataSource=DS.Tables("销售额").DefaultView
MyDataGrid.DataBind()
End Sub</script><body style="font: 10.5pt 宋体"> <form runat="server"> <h3><font face="宋体">对 DataGrid 控件的参数化存储过程选择</font></h3> 选择类别: <select id="SelectCategory" runat="server">
<option>Beverages</option>
<option>Condiments</option>
<option>Confections</option>
<option>Dairy Products</option>
<option>Grains/Cereals</option>
<option>Meat/Poultry</option>
<option>Produce</option>
<option>Seafood</option>
</select> 选择年份: <select id="SelectYear" runat="server">
<option>1996</option>
<option>1997</option>
<option>1998</option>
</select> <input type="submit" OnServerClick="GetEmployees_Click" Value="获取销售额" runat="server"/><p> <ASP:DataGrid id="MyDataGrid" runat="server"
Width="650"
BackColor="#ccccff"
BorderColor="black"
ShowFooter="false"
CellPadding=3
CellSpacing="0"
Font-Name="宋体"
Font-Size="8pt"
HeaderStyle-BackColor="#aaaadd"
EnableViewState="false"
/> </form></body>
</html>
取的方法用sqlReader去读还是用sqlCommand的Parameters去读?
你的存储过程是返回一个数据集的吧?我想返回过程的结果
OCI-22060: 参数 [2] 是一个无效或未初始化的数值
代码:
oraCmd.CommandText="Dt_CheckRoleType";
oraCmd.CommandType=CommandType.StoredProcedure;
oraCmd.Parameters.Clear();
oraCmd.Parameters.Add("iRoleType",OracleType.Number,10);
oraCmd.Parameters.Add("StrRoleDescript",OracleType.NVarChar,20);
oraCmd.Parameters.Add("iRole",OracleType.Number,2);
oraCmd.Parameters.Add("iOrgType",OracleType.Number,10);
oraCmd.Parameters.Add("iResult",OracleType.Number,10);
oraCmd.Parameters["iRoleType"].Value=iRoleId.ToString();
oraCmd.Parameters["StrRoleDescript"].Value=txt_RoleDescript.Text.Trim();
oraCmd.Parameters["iRole"].Value=txt_Role.Text.Trim();
oraCmd.Parameters["iOrgType"].Value=ddl_OrgType.SelectedItem.Value.Trim();
oraCmd.Parameters["iResult"].Direction=ParameterDirection.Output;