Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
More than 34 changes?
Message
De
14/12/1999 13:28:09
 
 
À
14/12/1999 13:02:31
Information générale
Forum:
Visual FoxPro
Catégorie:
Autre
Divers
Thread ID:
00303478
Message ID:
00303503
Vues:
17
>Hi all,
>I just observed a TABLEUPDATE() behavior that suprised me.
>If a form has more than 36 controls and user edits 35 control values, TABLEUPDATE() fails. Using AERROR() the message "SQL String too long..." is reported.
>If user changes 1-34 controls or changes all controls, TABLEUPDATE() will work. Appending a blank record seems to be immune to the limit/TABLEUPDATE() failure.
>
>Evidently, VFP creates an SQL select... statement containing a list of all modified fields and this exceeds the 255 char string limit for SQL statements. (I think it's 255).
>
>Has anyone else observed this? Is there a way to commit changes without forcing with TABLEUPDATE(0,.t.)? I suppose a loop that finds all CURVAL() = OLDVAL() true and then forces a TABLEUPDATE would be a workaround. That doesn't seem too "elegant" tho.
>TIA,
>Bill

Are you seeing this with a view? With views you can change the UPDATE USING setting to use only the primary key of the table, and this shouls solve the problem. If it doesn't, you can mess around by rasing the the limit of WHERE clause complexity using SYS(3055).

Beyond that, you will be forced to do partial updates manually.
Erik Moore
Clientelligence
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform