Merci de ton aide...
Pour en revenir à des choses plus sérieuses :
J'ai trouvé ça :
http://msdn.microsoft.com/en-us/libr...yz(VS.71).aspx
Ce qui m'a l'air pas mal...
J'ai donc codé ça coté Oracle :
Package...
Body...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 create or replace PACKAGE XXXXXXX_EU AS TYPE T_CURSOR IS REF CURSOR; PROCEDURE UTILISATEUR_GET (vCODE_USR VARCHAR2,cRESULTSET OUT T_CURSOR); END XXXXXXX_EU;
et côté .net :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 create or replace PACKAGE BODY XXXXXXXX_EU AS PROCEDURE UTILISATEUR_GET (vCODE_USR VARCHAR2,cRESULTSET OUT T_CURSOR) AS BEGIN OPEN cresultset FOR SELECT * FROM utilisateur WHERE code_usr = vcode_usr; NULL; END UTILISATEUR_GET; END XXXXXXXX_EU;
Le tout me renvoie à nouveau une erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 public CL_DATA_Utilisateur(int Code_Utilisateur) { CHPAR = new List<string>(); OracleConnection oConn = new OracleConnection(ConfigurationManager.ConnectionStrings["EEEEEEE_CS"].ConnectionString); oConn.Open(); OracleCommand oCmd = new OracleCommand("XXXXXXX_EU.UTILISATEUR_GET", oConn); OracleParameter oParam; oParam = new OracleParameter(); oParam.ParameterName = "vCODE_USR"; oParam.OracleType = OracleType.VarChar; oParam.Size = 10; oParam.Direction = ParameterDirection.Input; oParam.Value = intCodeToString(Code_Utilisateur, '0', 10); oCmd.Parameters.Add(oParam); oParam = new OracleParameter(); oParam.ParameterName = "cRESULTSET"; oParam.OracleType = OracleType.Cursor; oParam.Direction = ParameterDirection.Output; oCmd.Parameters.Add(oParam); OracleDataReader oDR = oCmd.ExecuteReader(); this.CODE_USR = (string)oDR["CODE_USR"]; oConn.Close(); }
ORA-01036: numéro/nom de variable interdit
Line 77: oParam.Direction = ParameterDirection.Output;
Line 78: oCmd.Parameters.Add(oParam);
Line 79: OracleDataReader oDR = oCmd.ExecuteReader();
Line 80: this.CODE_USR = (string)oDR["CODE_USR"];
Line 81: oConn.Close();
Je commence à me demander si cela ne viendrait pas de problème(s) de droits...
Quelqu'un pourrait-il m'aider ?
D'avance merci
Laurent
Partager