Connection OleDb et Oracle [Résolu]

Messages postés
58
Date d'inscription
mercredi 28 septembre 2005
Dernière intervention
15 novembre 2006
- - Dernière réponse : atmeitsatme
Messages postés
58
Date d'inscription
mercredi 28 septembre 2005
Dernière intervention
15 novembre 2006
- 14 mars 2006 à 14:30
Bonjour,

J'utilise dans un web service un acces à ma base de données Oracle via les objets OleDB.
Mon code :

[WebMethod]
public int test()
{
OleDbConnection Olecnx;
OleDbCommand Olecmd;
int nb;


Olecnx = new OleDbConnection();
Olecnx.ConnectionString = "Provider= OraOLEDB.Oracle ; Data Source=***;User Id=***;Password=***;";
Olecnx.Open();
Olecmd = new OleDbCommand("SELECT COUNT(*) FROM HELP;", Olecnx);
nb= (int)Olecmd.ExecuteScalar();
Olecnx.Close();
return nb;
}


Mon probleme est que lors de l'éxecution de la commande sur le ExecuteScalar() une erreur est généré :
System.Data.OleDb.OleDbException: ORA-00903: Nom de table non valide
at System.Data.OleDb.OleDbCommand.ExecuteCommandTextErrorHandling(OleDbHResult hr)
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.ExecuteScalar()

Or ma table existe bien et je suis bien connecter.

Si quelqu'un peut me dire si ma ConnectionString est bien renseingé ou non ?
Merci.
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
Messages postés
58
Date d'inscription
mercredi 28 septembre 2005
Dernière intervention
15 novembre 2006
3
Merci
Merci tu avais bien raison pour le ;
Mais mon caste n'est pas autorisé
Voilà le code qui marche :
[WebMethod]
public int test()
{
OleDbConnection Olecnx;
OleDbCommand Olecmd;
int nb;
Olecnx = new OleDbConnection();
Olecnx.ConnectionString = "Provider= OraOLEDB.Oracle ; Data Source=***;User Id=***;Password=***;";
Olecnx.Open();
Olecmd = new OleDbCommand("SELECT COUNT(*) FROM HELP", Olecnx);
nb= Convert.ToInt32(Olecmd.ExecuteScalar());
Olecnx.Close();
return nb;
}

Merci atmeitsatme 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de atmeitsatme
Messages postés
4947
Date d'inscription
lundi 17 février 2003
Dernière intervention
14 février 2014
0
Merci
commence par retirer le ; à la fin de la requête.

et pourquoi n'utilises-tu pas l'espace de nom OracleClient ?


Sébastien FERRAND (
blog)
[Microsoft MVP Visual C#]
Commenter la réponse de sebmafate
Messages postés
58
Date d'inscription
mercredi 28 septembre 2005
Dernière intervention
15 novembre 2006
0
Merci
Via mon web service si j'utilise un Oracle... j'ais une autre erreur :

System.Data.OracleClient.OracleException: ORA-00911: Caractère non valide

at System.Data.OracleClient.OracleConnection.CheckError(OciErrorHandle errorHandle, Int32 rc)
at System.Data.OracleClient.OracleCommand.Execute(OciStatementHandle statementHandle, CommandBehavior behavior, Boolean needRowid, OciRowidDescriptor& rowidDescriptor, ArrayList& resultParameterOrdinals)
at System.Data.OracleClient.OracleCommand.Execute(OciStatementHandle statementHandle, CommandBehavior behavior, ArrayList& resultParameterOrdinals)
at System.Data.OracleClient.OracleCommand.ExecuteReader(CommandBehavior behavior)
at System.Data.OracleClient.OracleCommand.ExecuteReader()

J'ais lus sur un autre forum que pour éviter cette erreur il fallait utiliser les objets OleDb
Commenter la réponse de atmeitsatme
Messages postés
4947
Date d'inscription
lundi 17 février 2003
Dernière intervention
14 février 2014
0
Merci
le caractère non valide, c'est ton ;


Sébastien FERRAND (
blog)
[Microsoft MVP Visual C#]
Commenter la réponse de sebmafate

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.