mercredi 3 août 2011

(C#/.NET Framework 4) Insert SQL en base Oracle et obtention de l'ID ajouté.


Contexte : La table MATABLE comporte plusieurs champs dont un qui est nommé ID et qui est alimenté automatiquement par une SEQUENCE INCREMENTEE au sens ORACLE.
String strSQL = "insert into MATABLE(CHAMPS1) values('VALEUR1') returning id into :myOutputParameter";
OracleCommand oracleCommand = new OracleCommand();
oracleCommand.Connection = oracleConnection;
oracleCommand.CommandType = System.Data.CommandType.Text;
oracleCommand.CommandText = strSQL;
oracleCommand.Parameters.Add("myOutputParameter", OracleDbType.Decimal, System.Data.ParameterDirection.ReturnValue);
oracleCommand.ExecuteReader();
int id = Int32.Parse(oracleCommand.Parameters["myOutputParameter"].Value.ToString());