sql >> Database >  >> RDS >> Oracle

Opgeslagen Oracle-procedure aanroepen vanuit C#?

Bezoek deze ODP-site opgezet door oracle voor Microsoft Oracle Client Developers:http://www.oracle.com/technetwork/topics/dotnet/index-085703.html

Hieronder vindt u ook een voorbeeldcode waarmee u aan de slag kunt om een ​​opgeslagen procedure van C# naar Oracle aan te roepen. PKG_COLLECTION.CSP_COLLECTION_HDR_SELECT is de opgeslagen procedure gebouwd op Oracle die parameters PUNIT, POFFICE, PRECEIPT_NBR accepteert en het resultaat retourneert in T_CURSOR.

using Oracle.DataAccess;
using Oracle.DataAccess.Client;

public DataTable GetHeader_BySproc(string unit, string office, string receiptno)
{
    using (OracleConnection cn = new OracleConnection(DatabaseHelper.GetConnectionString()))
    {
        OracleDataAdapter da = new OracleDataAdapter();
        OracleCommand cmd = new OracleCommand();
        cmd.Connection = cn;
        cmd.InitialLONGFetchSize = 1000;
        cmd.CommandText = DatabaseHelper.GetDBOwner() + "PKG_COLLECTION.CSP_COLLECTION_HDR_SELECT";
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.Parameters.Add("PUNIT", OracleDbType.Char).Value = unit;
        cmd.Parameters.Add("POFFICE", OracleDbType.Char).Value = office;
        cmd.Parameters.Add("PRECEIPT_NBR", OracleDbType.Int32).Value = receiptno;
        cmd.Parameters.Add("T_CURSOR", OracleDbType.RefCursor).Direction = ParameterDirection.Output;

        da.SelectCommand = cmd;
        DataTable dt = new DataTable();
        da.Fill(dt);
        return dt;
    }
}


  1. Tabelindexen instellen in databases

  2. Hoe jsonb-arrays op te vragen met de IN-operator

  3. Postgresql-adapter (pg):kon geen verbinding maken met de server

  4. Hoe de waarde van het samengestelde variabele veld in te stellen met behulp van dynamische SQL