在线请教!调用存储过程时返回空值!
各位大侠!请不惜赐教!菜鸟感激不尽!
在调用存储过程时,即使直接给存储过程的输入参数赋值,输出也是空值!而直接在sqlserver里的查询发分析起下做查询时!能得到正确结果!
附1:存储过程:CREATE PROCEDURE CountTotal
(
@StuProfession varchar,
@StuClass varchar,
@CourseName char ,
@Count int output
)
AS
select count (*) from TB_StudentScore
where StuProfession=@StuProfession and StuClass=@StuClass and CourseName=@CourseName and Memo!=' 代考 ' and Memo!='缺考' and Memo!='舞弊'
GO
附1:在vs下调用存储过程:
Dim str1, str2, str3 As String
Dim SummaryScore As Integer
Dim cmd1 As New SqlCommand
cmd1.Connection = sqlconn
cmd1.CommandText = "CountTotal"
cmd1.CommandType = CommandType.StoredProcedure
Dim TempParam11, TempParam22, TempParam33, TempParam44 As SqlParameter
TempParam11 = New SqlParameter("@StuProfession", SqlDbType.VarChar, 40)
TempParam11.Value = "自本" 'DropDownList9.SelectedItem.Text
cmd1.Parameters.Add(TempParam11)
TempParam22 = New SqlParameter("@StuClass", SqlDbType.VarChar, 10)
TempParam22.Value = "001" ' DropDownList10.SelectedItem.Text
cmd1.Parameters.Add(TempParam22)
TempParam33 = New SqlParameter("@CourseName", SqlDbType.Char, 10)
TempParam33.Value = "过程控制与系统理论" '" '" & TextBox1.Text & "'"
cmd1.Parameters.Add(TempParam33)
TempParam44 = New SqlParameter("@Count", SqlDbType.Int, 4)
TempParam44.Direction = ParameterDirection.Output
cmd1.Parameters.Add(TempParam44)
cmd1.ExecuteNonQuery()
' TextBox12.Text = cmd1.Parameters("@Count").Value.ToString()
'total= cmd1.Parameters("@Count").Value 为某一班级某一课程能参与算平均分的总人数
另外我直接在查询分析器里面作sql查询是是能的到正确的结果的!
在调用存储过程时,即使直接给存储过程的输入参数赋值,输出也是空值!而直接在sqlserver里的查询发分析起下做查询时!能得到正确结果!
附1:存储过程:CREATE PROCEDURE CountTotal
(
@StuProfession varchar,
@StuClass varchar,
@CourseName char ,
@Count int output
)
AS
select count (*) from TB_StudentScore
where StuProfession=@StuProfession and StuClass=@StuClass and CourseName=@CourseName and Memo!=' 代考 ' and Memo!='缺考' and Memo!='舞弊'
GO
附1:在vs下调用存储过程:
Dim str1, str2, str3 As String
Dim SummaryScore As Integer
Dim cmd1 As New SqlCommand
cmd1.Connection = sqlconn
cmd1.CommandText = "CountTotal"
cmd1.CommandType = CommandType.StoredProcedure
Dim TempParam11, TempParam22, TempParam33, TempParam44 As SqlParameter
TempParam11 = New SqlParameter("@StuProfession", SqlDbType.VarChar, 40)
TempParam11.Value = "自本" 'DropDownList9.SelectedItem.Text
cmd1.Parameters.Add(TempParam11)
TempParam22 = New SqlParameter("@StuClass", SqlDbType.VarChar, 10)
TempParam22.Value = "001" ' DropDownList10.SelectedItem.Text
cmd1.Parameters.Add(TempParam22)
TempParam33 = New SqlParameter("@CourseName", SqlDbType.Char, 10)
TempParam33.Value = "过程控制与系统理论" '" '" & TextBox1.Text & "'"
cmd1.Parameters.Add(TempParam33)
TempParam44 = New SqlParameter("@Count", SqlDbType.Int, 4)
TempParam44.Direction = ParameterDirection.Output
cmd1.Parameters.Add(TempParam44)
cmd1.ExecuteNonQuery()
' TextBox12.Text = cmd1.Parameters("@Count").Value.ToString()
'total= cmd1.Parameters("@Count").Value 为某一班级某一课程能参与算平均分的总人数
另外我直接在查询分析器里面作sql查询是是能的到正确的结果的!
...全文
相关推荐
Sql Server 存储过程调用存储过程接收输出参数返回值
主要介绍了Sql Server 存储过程调用存储过程接收输出参数返回值,需要的朋友可以参考下
PostgreSQL中调用存储过程并返回数据集实例
主要介绍了PostgreSQL中调用存储过程并返回数据集实例,本文给出一创建数据表、插入测试数据、创建存储过程、调用创建存储过程和运行效果完整例子,需要的朋友可以参考下
oracle 在一个存储过程中调用另一个返回游标的存储过程
第一种情况是返回的游标是某个具体的表或视图的数据,如: SQL-Code: 代码如下: CREATE OR REPLACE PROCEDURE P_TESTA ( PRESULT OUT SYS_REFCURSOR ) AS BEGIN OPEN PRESULT FOR SELECT * FROM USERS; END P_TESTA; 其中USERS就是数据库中一个表。在调用的时候只要声明一个该表的ROWTYPE类型就可以了: SQL-Code: 代码如下: CREATE OR REPLACE PROCEDURE P_TESTB AS VARCURSOR SYS_REFCURSOR;
Java调用MySQL存储过程并获得返回值的方法
主要介绍了Java调用MySQL存储过程并获得返回值的方法,实例分析了java实现MySQL存储过程的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
Java调用带参数的存储过程并返回集合
Java调用带参数的Oracle 存储过程并返回集合,



