Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Cursoradapters and oracle10g using ODBC
Message
De
16/02/2006 04:16:38
 
 
À
Tous
Information générale
Forum:
Visual FoxPro
Catégorie:
Client/serveur
Titre:
Cursoradapters and oracle10g using ODBC
Versions des environnements
Visual FoxPro:
VFP 8 SP1
OS:
Windows 2000
Database:
Oracle
Divers
Thread ID:
01096681
Message ID:
01096681
Vues:
63
We are having problems with cursoradapters sending INSERT or UPDATE statements with many columns to the Oracle backend.

When a cursoradapter sends an INSERT or UPDATE statement through the backend (when a TABLEUPDATE() is called) with more than a certain number of 'parameters' ('?''s) - in this case it seems to be about 120 fields - Visual Foxpro (Version 8 SP1) crashes. The call does not seem to reach the Oracle Server, so it is likely caused by interaction between Visual Foxpro and the Oracle ODBC driver.

Interestingly, the same INSERT or UPDATE statement will work when called by the VFP command SQLEXEC() [The table we tested this on had 170 fields. It may fail with a larger number of fields].

However, if we change the INSERT/UPDATE statement to be a Stored Procedure call which performs the INSERT or UPDATE, taking the field values (and key field values) as parameters, then the SQLEXEC() call crashes VFP with more than 120 parameters (fields). (The cursoradapter does not seem to be able to send a Stored Procedure call; setting the cursoradapter's InsertCmd to 'CALL tablename_inscmd(...)' fails with an Oracle SQL parsing error from the driver).

Also, Visual Foxpro Version 8 without the Service Pack does not crash, however the calls still fail, but not necessarily at the same number of parameters. I do recall seeing something about VFP8SP1 fixing a problem with too many parameters sent via SQL Passthru perhaps, but I didn't expect that it would crash instead of erroring!

Any help you can provide would be much appreciated.
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform