Bonjour,
J'ais un web servcice, qui se connecte à une base données Oracle via OleDb.
Voici une de mes web methodes :
OleDbDataAdapter monAdapter = new OleDbDataAdapter();
DataSet monDataset = new DataSet();
String req_sql;
OleDbCommand oleDbCmd;
oleDbCmd = oconnexion.CreateCommand();
req_sql = "SELECT NOM, QTEBARRE"
+ ", COUNT(QTEBARRE) AS Nombre FROM STOCK WHERE REFERENCEPROFILE = '" + RefProfile
+ "' and QTEBARRE = '" + Longueur.ToString().Replace(".", ",")
+ "' GROUP BY NOMSTOCK, QTEBARRE";
oleDbCmd.CommandText = req_sql;
monAdapter.SelectCommand = oleDbCmd;
monAdapter.Fill(monDataset, "STOCK");
return monDataset;
Cette méthode retourne un dataSet
Quand j'éxecute cette requete avec sqlplus d'oracle tout marche bien.
Alors que pendant l'appel de ma méthode me génère une erreur :
Erreur : ORA-01722: Nombre non valide
Détails : at System.Data.OleDb.OleDbCommand.ExecuteCommandTextForMultpleResults(tagDBPARAMS dbParams, Object& executeResult)
at System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object& executeResult)
at System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior behavior, Object& executeResult)
at System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method)
at System.Data.OleDb.OleDbCommand.ExecuteReader(CommandBehavior behavior)
at System.Data.OleDb.OleDbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, String srcTable)
Je n'arrive pas à comprendre d'ou elle peut lever.
Si quelqu'un peut m'aider ?