VB.NET 调用存储过程 top有问题!~麻烦大家了!!!第一次发帖子!
后台代码:
'连接数据库
Dim con As SqlConnection = New SqlConnection("server=.;database=KSCXXT;uid=sa;pwd=sa")
con.Open()
'实例化SqlCommand 对象
Dim cmd As SqlCommand = New SqlCommand("selectedtop10id", con)
'定义SqlCommand 类型
cmd.CommandType = CommandType.StoredProcedure
'设置参数值
cmd.Parameters.Add("@a", SqlDbType.Int).Value = 10
GridView1.DataSource = cmd.ExecuteReader
GridView1.DataBind()
'关闭数据库
con.close()
存储过程代码:
CREATE PROCEDURE selectedtop10id
@a int
AS
exec('select top 10 * from StudentInfo where id not in(select top + cast(@a) + id from StudentInfo)')
GO
在cmd.ExecuteReader时候出错!
第一次发贴,不知道自己有多少分,也许是0分吧,希望大家不要介意,帮帮忙!
[解决办法]
空格
exec( 'select top 10 * from StudentInfo where id not in(select top ' + @a + ' id from StudentInfo) ')
*****************************************************************************
欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码)
http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html