0

J'utilise System.Data.OracleClient pour me connecter à une base de données Oracle en utilisant la bibliothèque Enterprise et je voudrais appeler une procédure stockée en utilisant le commandType = Text comme suit:Est-il possible d'utiliser commandType = text pour appeler une procédure stockée using System.Data.OracleClient

Microsoft.Practices.EnterpriseLibrary.Data.Database database = null; 

database = DatabaseFactory.CreateDatabase("DbInstanceName"); 
System.Data.Common.DbConnection conn = database.CreateConnection(); 

conn.Open(); 

commandObj = database.GetSqlStringCommand("execute procName('paramValue1','paramValue2')"); 
commandObj.CommandType = CommandType.Text; 
commandObj.Connection = conn; 

returnCode = database.ExecuteNonQuery(commandObj); 

Je continue à obtenir une erreur d'instruction SQL non valide et voudrais savoir s'il est possible d'utiliser CommandType.Text pour un appel de procédure stockée dans Oracle.

Nous ne pouvons pas utiliser le CommandType = StoredProcedure car la chaîne de commande transmise inclut toutes les valeurs de paramètre de l'appel de procédure stockée dans la chaîne. Si cela n'est pas possible, je devrais analyser chacune des valeurs de paramètre de la chaîne et les placer dans des objets de paramètre.

Répondre

0

Ceci est possible. J'ai trouvé que mon problème était l'instruction "execute". Cela n'est pas nécessaire pour les processeurs Oracle stockés.