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

PL /SQLストアドプロシージャはカーソルをVBAADODB.RecordSetに出力しますか?

    これだと思います:

    With cmd
        .Properties("PLSQLRSet") = TRUE
        .ActiveConnection = conn
        .CommandType = adCmdText
        .CommandText = "{call their_package.get_product(?,?)}"
        .NamedParameters = True
        .Parameters.Append cmd.CreateParameter("rptid", adNumeric, adParamInput, 0, 98)
        .Parameters.Append cmd.CreateParameter("scenario", adVarChar, adParamInput, 4, "decline001")
    End With
    ...
    
    Set rs = cmd.Execute
    cmd.Properties("PLSQLRSet") = FALSE
    

    注: their_package.get_product()は3つのパラメーターを取りますが、参照カーソルのパラメーターはプロバイダーによって自動的にバインドされるため、バインドする必要があるのは2つだけです。

    詳細については、Oracleのドキュメントを確認してください。 Oracle Provider for OLE DB開発者ガイド-「VisualBasicでのOraOLEDBの使用」




    1. Accessでデータベースドキュメンテーションを使用する方法

    2. テーブルから重複する行を削除します

    3. Typeof()がSQLiteでどのように機能するか

    4. Psycopg2を使用している場合、Postgresは数百秒後にクエリ中に接続を閉じます