【发布时间】:2017-07-07 05:49:27
【问题描述】:
vb.net和mssql存储过程如何通过select in而不是=来执行存储过程
Dim sSQL As String
Dim objConn As SqlConnection
Dim objcmd As SqlCommand
Dim da As SqlDataAdapter
Dim ds = New DataSet()
sSQL = "getinvoice"
objConn = utility.getconnect
objcmd = New SqlCommand(sSQL, objConn)
objcmd.CommandType = CommandType.StoredProcedure
objcmd.Parameters.Add("@invoiceid", SqlDbType.VarChar)
objcmd.Parameters.Item("@invoiceid").Value = "1,5,13,18" '<-- problem
da = New SqlDataAdapter(objcmd)
da.Fill(ds)
ALTER PROCEDURE [dbo].[getinvoices]
@invoiceid varchar(50)
AS
BEGIN
select * from invoice where invoiceid in @invoiceid '<-- problem
END
【问题讨论】:
-
将
@invoiceid作为表类型传递,然后加入它。
标签: sql-server vb.net stored-procedures