vb調用存儲過程返回值
我嘗試過,不知道怎麼使用返回值,但是使用了select 1,select 0這樣的,
然後用Command.ExecuteScalar方法
『貳』 請問VB編程中所說的返回值是什麼反到了哪裡有什麼用
返回值是針對函數而言的,也就是Function,一般有兩種類型,一種是有返回值,一種是沒有返回值的
沒有返回值的就和過程Sub是一個道理的,就是執行了這一段命令,完成了某個任務,
另一種就是有返回值的了,這個函數實際上是兩個過程,一是執行了這一段命令,完成了某個任務,同時還要得到某個值,此時這個值存儲在這個函數的內存地址中,如果需要把這個值作為一個常量賦給某個變數就直接賦給那個變數即可,如果不需要賦給某個變數,可以當做一般的函數調用。
函數的返回值暫時返回到函數的分配的內存地址中,隨時等待把它賦給需要接收這個值的變數。
舉兩個例子
Function
sum1(ByVal
a
As
Integer,
ByVal
b
As
Integer)
Dim
s
As
Integer
s
=
a
+
b
End
Function
Function
sum2(ByVal
a
As
Integer,
ByVal
b
As
Integer)
As
Integer
Dim
s
As
Integer
s
=
a
+
b
sum2
=
s
End
Function
sum1是計算a+b,不返回a+b的和,也就是只對a+b加了,但結果不存到sum1中
sum2是計算a+b,返回a+b的和,也就是不僅對a+b加了,並且結果保存到sum2中,從而就可以用
c=sum2(1,2)這樣調用sum2,c得到1+2的值
『叄』 vb程序中如何獲取存儲過程的返回值
首先,你這個是delphi的代碼,由於VB與Delphi還是有較大差異的,vb愛好者未必能幫你。另外有關獲取返回值到底是0是1比較簡單,sql寫完以後有狀態可以檢測的。
『肆』 vb6.0獲取sqlserver存儲過程的返回值
Dim Cnn As ADODB.Connection
Dim Rs As ADODB.Recordset
Dim Cnn_c As New ADODB.Command
Dim cnn_p As ADODB.Parameter
Cnn.ConnectionString = ConnStr'連接字元串
With Cnn
'.Provider = "MSDASQL"
.CursorLocation = adUseClient
.Open
End With
Set Cnn_c.ActiveConnection = Cnn
With Cnn_c
.CommandType = adCmdStoredProc
.CommandText = "存儲過程名"
End With
Set cnn_p = Cnn_c.CreateParameter("ReTurn", adInteger, adParamReturnValue)
Cnn_c.Parameters.Append cnn_p
『這里添加其他參數
Set Rs = Cnn_c.Execute'執行
'Cnn_c.Parameters("ReTurn")這就是返回值
Rs.close
Cnn.Close
Set cnn_p = Nothing
Set Cnn_c = Nothing
Set Rs = Nothing
Set Cnn = Nothing
『伍』 VB該如何顯示存儲過程返回的結果集
可以換個方式來實現
Private Sub Command1_Click()
Dim Conn As ADODB.Connection
Set Conn = New ADODB.Connection
Conn.Open GetConnStr
SQL = "CREATE PROCEDURE 商品信息 AS SELECT 凈成本 From B產品 ORDER BY ID"
Conn.Execute SQL
Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset
rs.Open "商品信息", Conn, 1, 1
While (Not rs.EOF)
ListView1.ListItems.Add , , rs.Fields("凈成本").Value '增加到ListView中
rs.MoveNext '記錄集下移一行
Wend
Set rs = Nothing
Set Conn = Nothing
End Sub
『陸』 vb.net 如何獲得存儲過程的返回值
DimcmdAsNewSqlCommand()
cmd.CommandType=CommandType.StoredProcere
cmd.CommandText="procname"
'參數名可以任意,但最好與存儲過程的return一致
'默認值隨便寫
DimretAsNewSqlParameter("ret",0)
'返回值類型才有下面一句
ret.Direction=ParameterDirection.ReturnValue
cmd.Parameters.Add(ret)
'其他的參數和一般的sql語句沒區別
'...
cmd.ExecuteNonQuery()
'得到了ret
『柒』 asp.net (vb語言)如何返回存儲過程值
tem.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
/// <summary>
/// Class1 的摘要說明
/// </summary>
public class Class1
{
public Class1()
{
//
// TODO: 在此處添加構造函數邏輯
//
}
public bool checkUser(string UserName, string PassWord)
{
。。。。。。
SqlCommand cmd = new SqlCommand("存儲過程名", conn);
cmd.CommandType = CommandType.StoredProcere;
cmd.Parameters.Add(new SqlParameter("@username", SqlDbType.Int));
cmd.Parameters["@username"].Value = UserName;
cmd.Parameters["@password"].Value = PassWord;
cmd.Parameters["@ischeck"].Direction = ParameterDirection.Output;
cmd.ExecuteNonQuery();
string backString = cmd.Parameters["@ischeck"].Value.ToString();
cmd.Dispose();
if (backString =="true")
{
return true;
}
else
{
return false;
}
}
}
說明一下,那個存儲過程,看你怎麼寫,你應該有兩個輸入參數,一個是UserName 一個是password,還有個輸出參數ischeck,你再自己把存儲過程寫好就OK了,另外調用的時候只要判斷checkUser的返回值。。。就可以了
『捌』 vb獲取sql server存儲過程返回的結果集
我來解答。
Create PROCEDURE [dbo].[Test]
AS
BEGIN
set nocount on--關閉掉 受影響記錄行數的消息 就行了
select * from abc
END
『玖』 VB 返回值
'返回值:調用一個函數(包括自定義的),執行一系列語句,將一個結果返回給調用者
'比如 調用 自定義函數 MyFun,可以得到兩個數的和
Private Sub Command1_Click()
Dim S As Single
S = MyFun(2, 3) '得到 2 與 3 的和
Print S
S = MyFun(8, 3) '得到 8 與 3 的和
Print S
End Sub
Private Function MyFun(a As Single, b As Single) As Single
MyFun = a + b '返回 和
' MyFun = a * b'返回 積
End Function
『拾』 vb6調用存儲過程返回結果集
Set rs = cmd.Execute
沒有錯誤,除非你的存儲過程有參數,而你沒有傳遞參數
