Bonjour
Je dois appeller une procédure Stockée Oracle
J'utilise System.Data.OracleClient et toutes les classes où Oracle apparait dans le nom :
OracleConnexion
OracleCommand
2 cas de figure se présentent,
- une procédure sans paramètre ==> genre oracleSqlCommande.Statement = "P_Maj_Auto1( )";
ok ça passe, ma mise à jour se fait.- une procédure avec paramètre ==> genre oracleSqlCommande.Statement = "P_Maj_Auto2( :num )";
Ca ne passe pas, ça déclenche l'erreur suivante
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 System.Data.OracleClient.OracleException: ORA-06550: line 1, column 7: PLS-00801: internal error [22503] ORA-06550: line 1, column 7: PL/SQL: Statement ignored à System.Data.OracleClient.OracleConnection.CheckError(OciErrorHandle errorHandle, Int32 rc) à System.Data.OracleClient.OracleCommand.Execute(OciStatementHandle statementHandle, CommandBehavior behavior, Boolean needRowid, OciRowidDescriptor& rowidDescriptor, ArrayList& resultParameterOrdinals) à System.Data.OracleClient.OracleCommand.ExecuteNonQueryInternal(Boolean needRowid, OciRowidDescriptor& rowidDescriptor) à System.Data.OracleClient.OracleCommand.ExecuteNonQuery() à com.lfdj.Oracle.DML.OracleDML.Execute() dans C:\Projets\Oracle\Oracle\DML\OracleDML.cs:ligne 378 mon paramètre est de type Number (Oracle)
Quelqu'un a une idée ?
Partager