Requete base Access OLEDBConnection [Résolu]

jesaipa_1 63 Messages postés dimanche 8 janvier 2006Date d'inscription 16 mai 2007 Dernière intervention - 1 févr. 2006 à 17:56 - Dernière réponse : MorpionMx 3489 Messages postés lundi 16 octobre 2000Date d'inscription 30 octobre 2008 Dernière intervention
- 2 févr. 2006 à 10:59
Slt a tous, j'ia un petit pb avec mes requete cad que mes requetes SELECT et INSERT marche mais pas ma requete DELETE
je n'arrive pas a savoir pourquoi si quelqun a une idée merci de la partager
mon code :



// établie une connexion sur la base Access
public
bool Open()
{

try
{

this.oConn =
new
OleDbConnection(
this.connStr);

this.oConn.Open();

return
true;
}

catch
{

return
false;
}
}


public void Delete(string _UID)
{string req "DELETE * FROM CS_CARD WHERE CD_CSN '" + CD_CSN + "';";
this.Execute(req);req "DELETE * FROM CS_ACCOUNT WHERE AT_CSN '" + CD_CSN + "';";
this.Execute(req);
this
.Close();
}


// execute une requête SQL sur la base Access
public
bool Execute(
string ordre)
{

try
{

this.oCmd =
new
OleDbCommand(ordre,
this.oConn);

this.rdr =
this.oCmd.ExecuteReader();

return
true;
}

catch
{

return
false;
}
}

Merci d'avance
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
cs_coq 6366 Messages postés samedi 1 juin 2002Date d'inscription 2 août 2014 Dernière intervention - 1 févr. 2006 à 18:19
3
Merci
Salut,

Pour une requête DELETE on se sert de la méthode ExecuteNonQuery, pas ExecuteReader.

/*
coq
MVP Visual C#
*/

Merci cs_coq 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 99 internautes ce mois-ci

Commenter la réponse de cs_coq
jesaipa_1 63 Messages postés dimanche 8 janvier 2006Date d'inscription 16 mai 2007 Dernière intervention - 1 févr. 2006 à 18:00
0
Merci
ah oui, j'oubliai la requete quand je l'execute sous Access elle fonctionne correctement sans aucun probleme

et l'endroit où elle bloque c'est dans la fonction Execute quand elle veut executer cette ligne : this.rdr =
this.oCmd.ExecuteReader();

elle passe dans le catch
Commenter la réponse de jesaipa_1
jesaipa_1 63 Messages postés dimanche 8 janvier 2006Date d'inscription 16 mai 2007 Dernière intervention - 2 févr. 2006 à 09:14
0
Merci
this.oCmd =
new
OleDbCommand(ordre,
this.oConn);

this.rdr =
this.oCmd.ExecuteNonQuery();

return
true;

cela me retourne une erreur : Cannot implicitly convert type 'int' to 'System.Data.OleDb.OleDbDataReader' sur la ligne du this.rdr = this.oCmd.ExecuteNonQuery();

pourrait tu maider sur ce probleme merci
Commenter la réponse de jesaipa_1
jesaipa_1 63 Messages postés dimanche 8 janvier 2006Date d'inscription 16 mai 2007 Dernière intervention - 2 févr. 2006 à 09:23
0
Merci
private
OleDbDataReader rdr;
Commenter la réponse de jesaipa_1
MorpionMx 3489 Messages postés lundi 16 octobre 2000Date d'inscription 30 octobre 2008 Dernière intervention - 2 févr. 2006 à 10:59
0
Merci
Salut,
Comme le dit l'erreur, ExecuteNonQuery() te retourne un int, pas un OleDbDataReader



Mx
MVP C#
Commenter la réponse de MorpionMx

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.