急求:关于一下dataadapter带参数的问题

jacklinq 2016-03-23 11:28:04
源码如下:
Dim cmbclassda As New SqlDataAdapter()

cmbclassda.SelectCommand = New SqlCommand("select top 3 班级编号 from tb_class where 班级级别=1 order by 班级序号 desc", mycon)


mycon.Open()
cmbclassda.Fill(cmbclassds, "dsclass")
mycon.Close()
cmbclass.Items.Clear()
For i = 0 To cmbclassds.Tables("dsclass").Rows.Count - 1
cmbclass.Items.Add(cmbclassds.Tables("dsclass").Rows(i)(0))
Next
不带参数的可以正常运行!可我想要指定显示几条还有班级级别也由外部参数调用,如下:
Dim cmbclassda As New SqlDataAdapter()

cmbclassda.SelectCommand = New SqlCommand("select top (@a) 班级编号 from tb_class where 班级级别=@b order by 班级序号 desc", mycon)
With cmbclassda.SelectCommand
.Parameters.Add("@a", SqlDbType.Int)
.Parameters.Add("@b", SqlDbType.Int)
'topnum,intjb是由其它控件获取的两个数值
.Parameters("@a").Value = topnum
.Parameters("@b").Value = intjb
End With
mycon.Open()
cmbclassda.Fill(cmbclassds, "dsclass")
mycon.Close()
cmbclass.Items.Clear()
For i = 0 To cmbclassds.Tables("dsclass").Rows.Count - 1
cmbclass.Items.Add(cmbclassds.Tables("dsclass").Rows(i)(0))
Next
结果就没反映了!这程序错在哪啊?
...全文
163 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
jacklinq 2016-03-26
  • 打赏
  • 举报
回复
找到原因了,不是SQL的问题,是传参出了问题!那程序没问题的!感谢两位热心!
Justin-Liu 2016-03-24
  • 打赏
  • 举报
回复
把你的sql语句先拿到management studio里执行一下看看是什么结果
楠小南 2016-03-24
  • 打赏
  • 举报
回复
数据库什么版本的
jacklinq 2016-03-24
  • 打赏
  • 举报
回复
急求啊,数据库版本是SQL2008的,平台是VS2010,在SQL里面进行测试, declare @a int declare @b int set @a =5 set @b=1 select top (@a) 班级编号 from tb_class where 班级级别=@b order by 班级序号 desc 也是正常的。能得到所要求的表!可就是在dataadapter中@a,@b参数不成啊

16,555

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧