Rechercher : dans
Par :

Access Mise à jour d'une table

Dernière réponse le 24 jun 2004 à 01:13:29 display, le 21 jun 2004 à 09:11:22 
 Signaler ce message aux modérateurs

Bonjour,

Acutellement j'ai cette commande pour mettre à jour un enregistrement :

DoCmd.RunSQL "UPDATE Invoice, Rate SET Invoice.cost_amounteur = [cost_amount]*[Rate]![rate] WHERE (((Invoice.cost_currency)=Left([Rate]![curtocur],3)) AND ((Right([Rate]![curtocur],3))=""EUR"")) AND ((Invoice.cost_type)=""Permanent""); ", -1

l'update fonctionne quand je change la valeur du controle de mon formulaire. mais si je change la valeur plus de 2 fois un message apparait en disant qu'il ne peut pas le mettre à jour car il est en ecriture.

peut-on enregistrer definitivement l'enregistrement après chaque
mise à jour ???? le ; aurait dû faire le commit ??

merci pour vos reponses

Meilleures réponses pour « Access Mise à jour d'une table » dans :
Mettre à jour son antivirus/anti-malware sans connexion Internet VoirAntivirus et antispywares ne sont utiles que s'ils sont mis à jour régulièrement. D'ailleurs tous les antivirus actuels se mettent à jour automatiquement par Internet. Mais comment profiter des mises à jour sur un ordinateur ne possédant pas de...
Mettre à jour Ad-Aware SE Personal VoirCette procédure ne marche plus depuis le 01/01/2008, Lavasoft ne maintient plus Ad-Aware SE ! Néanmoins, il est toujours possible de l'utiliser (pour ceux qui sont sous Windows 98 ou ME) en faisant la mise à jour manuellement. Pour cela, il faut...
Télécharger Norton Antivirus Mise à jour VoirVoici la dernière mise à jour téléchargeable pour l'antivirus Norton pour vous assurer une protection optimale contre les virus. Prend en charge les versions suivantes des logiciels antivirus de Symantec : Norton Antivirus 2009 for Windows XP...
SQL - Modification de table VoirModification de table Il est possible de supprimer une table grâce à la clause DROP, il existe aussi des commandes moins extrêmes permettant L'ajout de colonnes La modification de colonnes La suppression de colonnes Enfin, il est possible...

1

Lupin.Arsene, le 21 jun 2004 à 15:25:29

Bonjour display,

Je crois qu'il te faut faire un save et un refresh
après le DoCmd.RunSQL ! Toutefois je ne suis pas sur
à cent pour cent, moi c'est ce que je fais après
une modification sur une requête et ça fonctionne bien.

DoCmd.Save
RefreshDatabaseWindow

Lupin

Répondre à Lupin.Arsene

2

display, le 22 jun 2004 à 08:21:24

J'ai effectivement ajouter le DoCmd.Save et RefreshDatabaseWindow mais j'ai toujours après chaque update un message access qui mentionne un write conflict et me propose de sauver l'enregistrement.
(pour info, je suis seul à accèder à cette base.)

Merci pour votre aide.

Répondre à display

3

 Lupin.Arsene, le 24 jun 2004 à 01:13:29

Bonsoir,

Bon, je travaille différament avec la mise à jour de requête SQL,
j'ai apprit beaucoup dans un bouquin sur le sujet.

En fait, la question serait pourquoi fais-tu une maj de la requête?

Routine qui modifie une requête SQL

Public Function ChangeRequeteDef(ChaineRequete As String, ChaineSQL As String) As Boolean

Dim Definition As QueryDef

If ((ChaineRequete = "") Or (ChaineSQL = "")) Then
ChangeRequeteDef = False
Else
Set Definition = CurrentDb.QueryDefs(ChaineRequete)
Definition.SQL = ChaineSQL
Definition.Close
RefreshDatabaseWindow
ChangeRequeteDef = True
End If

End Function

Le nom de la requête et la définition SQL sont passés en
paramêtres lors de l'appel de la fonction, or lorsque j'ouvre
ou que je rafraichi le formulaire, celui-ci est à jour :)

Lupin

Répondre à Lupin.Arsene
Collection CommentÇaMarche.net