从VB.NET调用存储过程

任何人都可以帮我解决以下问题:

我创建了一个SQL Server存储过程,如下所示:

create procedure prcGet_sub_menu_list
     @sub_menu     char(5)
as
begin
     select
          'menu_code'     =     menu_code
          'menu_name'     =     menu_name
     from sub_menu_master
     where menu_code      =     @sub_menu
end
return

现在我从VB.NET调用此过程,但是我得到一个错误,如’存储过程prcGet_sub_menu_list需要参数@sub_menu未提供’.请帮我一下.我在VB.NET中的代码如下:

Imports System.Data
Imports System.Data.SqlClient

Dim sqlConn as New SqlClient.SqlConnection
sqlConn.ConnectionString = "........"
sqlConn.Open()

Dim menuCode as string
menuCode = cboDetails.selectedItem

Dim sqlCmd as New SqlCommand
sqlCmd.Connection = Connection.sqlConn
sqlCmd.CommandType = CommandType.StoredProcedure
sqlCmd.CommandText = "prcGet_sub_menu_list"
sqlCmd.Parameter.Add("menuCode",SqlDbType.Char)

Dim sqlDA as New SqlDataAdapter()
sqlDA.SelectCommand = sqlCmd
Dim sqlDT as New DataTable
sqlDA.Fill(sqlDT)

这是我写的代码,它给了我错误:
‘存储过程prcGet_sub_menu_list需要未提供的参数@sub_menu’.

请给我一些帮助.

问候,
乔治

解决方法

您必须在存储过程中提供相同的参数名称和类型.

sqlCmd.Parameters.Add(New SqlParameter("@sub_menu",SqlDbType.Char,5)).Value = "Joe"

格塔.

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...