vb.net 获取sql server存储过程中的分类汇总结果

gz284596265 2009-12-16 03:38:01
vb.net 调用sqlserver 存储过程
存储过程中用到了 compute 关键字
过程如下
--use k1
--GO
-- create proc fenleihuizong2
--@banji nvarchar(50)
--as
--select * from xueyuanguanli where 班级=@banji compute count(身份证号)
--go
调用代码
Dim oleDbConnection1 As OleDb.OleDbConnection
Dim strConnect As String
Dim sqlcommand As Data.OleDb.OleDbCommand
Dim sqladapter As Data.OleDb.OleDbDataAdapter
Dim sqldataset As New DataSet
Dim a As Integer
strConnect = "Provider=SQLOLEDB;Persist Security Info=False; Data Source=运营乘务王营;Initial Catalog=k1;User ID=sa;Password=123321"
oleDbConnection1 = New System.Data.OleDb.OleDbConnection(strConnect)
sqlcommand = New OleDb.OleDbCommand
sqladapter = New OleDb.OleDbDataAdapter
oleDbConnection1.Open()
sqlcommand.Connection = oleDbConnection1
sqlcommand.CommandType = CommandType.StoredProcedure
sqlcommand.CommandText = "fenleihuizong2"
sqladapter.SelectCommand = sqlcommand
sqladapter.SelectCommand.Parameters.Add("@banji", OleDb.OleDbType.Char, 50).Value = TextBox1.Text '将值传递给过程参数
sqladapter.Fill(sqldataset, "xueyuanguanli")
'之前为定义链接和打开连接()
DataGridView1.DataSource = Nothing '将记录集作为数据源赋给datafridview
DataGridView1.DataSource = sqldataset.Tables("xueyuanguanli") '将记录集作为数据源赋给
oleDbConnection1.Close()
问题
怎样获取分类汇总后的值 ?
很简单的问题见笑了!
...全文
120 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
gz284596265 2009-12-17
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 cm8983 的回复:]
--select  * into ##temp from xueyuanguanli where  班级=@banji compute count(身份证号)

select * from ##temp

drop table ##temp

--go

[/Quote]
按照贵方法实验发现错误说不能使用相关语句
use k1
GO
create proc fenleihuizong3
@banji nvarchar(50),@zongshu int output
as
select * into ##temp from xueyuanguanli where 班级=@banji compute count(身份证号)

select * from ##temp

drop table ##temp

go
消息 154,级别 15,状态 5,过程 fenleihuizong3,第 4 行
在 SELECT INTO 语句 中不允许使用 COMPUTE 子句。


请指点谢谢!
gz284596265 2009-12-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 wavezhou 的回复:]
你查出来的值不是显示在DataGridView1上了吗?

不明白你要获取什么值,你说清楚一点
[/Quote]
查出来的结果1是记录集2是记录集的汇总结果
DataGridView1获取的记录集
我还需要汇总结果
谢谢您的关注
cm8983 2009-12-16
  • 打赏
  • 举报
回复
--select * into ##temp from xueyuanguanli where 班级=@banji compute count(身份证号)

select * from ##temp

drop table ##temp

--go
米か臹 2009-12-16
  • 打赏
  • 举报
回复
你查出来的值不是显示在DataGridView1上了吗?

不明白你要获取什么值,你说清楚一点

16,554

社区成员

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

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