sql >> データベース >  >> RDS >> Sqlserver

ストアドプロシージャclassicaspから値と結果セットを返します

    あなたはすでにそれをやっています。2つを組み合わせるだけです。

    Set cmd = CreateObject("ADODB.Command")
    with cmd
        .ActiveConnection = cnnstr
        .CommandType = adCmdStoredProc
        .CommandText = "CheckEmployeeId"
        .Parameters.Refresh
        .Parameters("@EmployeeName") = EmployeeName
        Set rst = .Execute()
    end with
    'You will need to close the Recordset before returning the RETURN_VALUE.
    RetVal = cmd.Parameters("@RETURN_VALUE")
    

    互いに独立しているものを選択する必要はありません。唯一の問題は、返される順序です。両方のOUTPUTを覚えておいてください。 およびRETURN 返されたすべてのレコードセットが閉じられるまで、値にアクセスできません。

    個人的には、2次元配列として保存してすぐに閉じることを好みます。

    Set cmd = CreateObject("ADODB.Command")
    with cmd
        .ActiveConnection = cnnstr
        .CommandType = adCmdStoredProc
        .CommandText = "CheckEmployeeId"
        .Parameters.Refresh
        .Parameters("@EmployeeName") = EmployeeName
        Set rst = .Execute()
        If Not rst.EOF Then data = rst.GetRows()
        Call rst.Close()
    end with
    RetVal = cmd.Parameters("@RETURN_VALUE")
    
    'Access Recordset array
    If IsArray(data) Then
      'Return first column, first row.
      Response.Write data(0, 0)
    End If
    



    1. SQLServerデータベースサイズを選択します

    2. MySQLエラー#1071-指定されたキーが長すぎました。キーの最大長は767バイトです

    3. MySQLデータベースに保存されているPHPを実行するにはどうすればよいですか?

    4. 別のテーブルのデータを使用して計算列を作成する