Bonjour
Je travaille sur un projet en C# qui écrit dans une base de données ultralight embarquée sur un PDA
je cherche à faire un update dans cette base donc voici comment je procède :
et voici la fonction appelée :Audit.UpdateAudit(etatAudit, ID_Audit, ID_ModeleMoyenPaiement,dateAudit,creeSurPda);
public static void UpdateAudit(int etatAudit, int ID_Audit, int ID_ModeleMoyenPaiement, DateTime dateAudit, int creeSurPda)
{
int indexOfParms = 0;}
try
{
ULParameter[] reqParms = new ULParameter[5];}
reqParms[indexOfParms] = new ULParameter("etatAudit",ULDbType.Bit);
reqParms[indexOfParms++].Value = etatAudit;
reqParms[indexOfParms] = new ULParameter("ID_ModeleMoyenPaiement",ULDbType.Integer);
reqParms[indexOfParms++].Value = ID_ModeleMoyenPaiement;
reqParms[indexOfParms] = new ULParameter("dateAudit",ULDbType.DateTime);
reqParms[indexOfParms++].Value = dateAudit;
reqParms[indexOfParms] = new ULParameter("ID_Audit",ULDbType.Integer);
reqParms[indexOfParms++].Value = ID_Audit;
reqParms[indexOfParms] = new ULParameter("creeSurPda",ULDbType.Integer);
reqParms[indexOfParms++].Value = creeSurPda;
String request = Localisation.GetSQL(@"UPDATEAudit");
SQLManager.XcuteNonQueryRequest(request,reqParms);
catch(Exception ex)
{
throw new D8MobileException(ex.Message,CodeErreur.CODE_ERREUR_ACCES_DONNEES,"UpdateAudit("+ID_Audit+")");}
la requète récupérée et exécutée est :
mon problème est que l'update n'insère rien dans la baseUPDATE AUDIT
SET ETATAUDIT = ?, ID_MODELEMOYENPAIEMENT = ?, DATEAUDIT = ?, CREESURPDA = ?
WHERE ID_AUDIT = ?
alors que si je récupère la base embarquée sur mon pc et que je l'ouvre avec ultralight j'arrive à exécuter la requète en rentrant les mêmes paramètres qui lui sont passés en C#, ça fonctionne trés bien
je suis aussi passé en mode débug et on ne rentre pas dans l'exeption donc le fonctionnement est correct.
j'ai aussi essayé de passer via un transact sql et un comit lors de l'appel à la fonction de la requète comme ceci :
Je précise que le SQLManager.getInstance() est un singleton.SQLManager sql = SQLManager.getInstance() ;
sql.BeginTransaction() ;
Audit.UpdateAudit(etatAudit, ID_Audit, ID_ModeleMoyenPaiement,dateAudit,creeSurPda);
sql.CommitTransaction() ;
mais ça ne fonctionne pas mieux
est ce que quelqu'un a une idée d'où ça peut venir ?






Répondre avec citation
Partager