sql >> Database >  >> RDS >> Oracle

Syntaxisfout bij het aanroepen van een Oracle-pakket met ODBC in C#

Eindelijk aan het werk gekregen. Ik heb de grootte van elke parameter toegevoegd en correcties aangebracht in de aanroep:de functie heeft vier parameters (1 in, 3 uit) en geen retourwaarde:

using (OdbcCommand cmd = conn.CreateCommand())
{
    cmd.CommandText = "{ CALL TESTUSER.TESTPKG.TESTFUNC(?,?,?,?) }";
    cmd.CommandType = System.Data.CommandType.StoredProcedure;
    cmd.Parameters.Add("PARAM1", OdbcType.Decimal, 38).Direction = System.Data.ParameterDirection.Input;
    cmd.Parameters["PARAM1"].Value = var1;
    cmd.Parameters.Add("PARAM2", OdbcType.VarChar, 5).Direction = System.Data.ParameterDirection.Output;
    cmd.Parameters.Add("PARAM3", OdbcType.VarChar, 50).Direction = System.Data.ParameterDirection.Output;
    cmd.Parameters.Add("PARAM4", OdbcType.VarChar, 200).Direction = System.Data.ParameterDirection.Output;
    cmd.ExecuteNonQuery();

Ik vond dit document ook erg nuttig:De Oracle ODBC-stuurprogramma's gebruiken met derde Feestartikelen




  1. Moet ik COUNT allemaal samen vermijden in InnoDB?

  2. Hoe krijg ik de automatisch gegenereerde id's van de rij die in de tabel is ingevoegd?

  3. Log-afvuren van triggers in postgres 9.1

  4. SQL JOIN twee tabellen met AVG