"Alessandro Baraldi" <***@libero.it> ha scritto nel messaggio news:ae655dfe-50e9-4357-86c6-***@x41g2000hsb.googlegroups.com...
Post by Alessandro BaraldiOn 23 Apr, 09:34, "OneEDP"
Post by OneEDPSul sito di Alessandro ho trovato la possibilità di rendere un recordset
aggiornabile basato sul provider OLE DB SQL di MS.
Ho urgernza di rendere all'interno di Access 2000 aggiornabile recordset
(consumer ADO 2.5 o superiore) basato sul provider IBMDA400 su dati
residenti su As/400.
Via ODBC è stato possibile, ma le prestazioni potete immaginarle.
Esite una soluzione?
Grazie
Daniele
Dubito che il problema sia ODBC quanto magari al fatto che stai
facendo eseguire il codice SQL Client_Side avendo inserito funzioni
non riconoscosciute dal Motore del DB... come aggregazioni sui domini
o altre che obbligano a farti rielaborare in locale i dati....
La differenza tra i 2 provider in termini prestazionali è decisamente
trascurabile...
@Alex
Ti incollo questa uno stralcio di
quetahttp://support.microsoft.com/kb/227053/en
Data Source Based on Other Data Sources
If the source of data for the form is provided by any other source, such as
the Microsoft Jet database engine, you cannot create an ADO recordset that
can be edited with a form, even if you can edit the recordset directly with
ADO. The only solution in this case is to use Data Access Objects (DAO) to
create the recordset, and then to assign the recordset to the form's
Recordset property. DAO is highly optimized for the Microsoft Jet database
engine, and can access a number of ISAM or ODBC data sources that are
accessible by the Jet database engine.
If you are using an ISAM or ODBC data source, link the table to a Microsoft
Jet database (.MDB) and use DAO to open a recordset based on the linked
table. As long as the recordset can be edited directly via DAO, a form based
on the recordset can be edited as well. To create a DAO recordset that can
be edited in a Microsoft Access form, follow these steps.
ESATTAMENTE ciò che voglio evitare.
Hai da suggerirmbi qualche workaround meno dispendioso? Recordset
disconnessi? Query Asincrone... (penso che non c'entrano nulla, ma a volte i
data provider sono anachici)
Ciao e grazie
Daniele
http://support.microsoft.com/kb/281998
Per i Recordset disconnessi direi che nè ADO(in realtà i potrebbe con
Recordset in memoria fare un UpdateBatch ma non sarebbe efficiente in
quanto i tempi di apertura delle connessioni si allungherebbero e
bisognerebbe sempre tenere aperta una connessione) nè DAO lo
consentono, solo da NET è possibile...!
Per gli altri problemi concordo con Oscar in merito al Driver che
usi... in quanto se il codice SQL è ben strutturato viene sempre
eseguito ServerSide... addirittura anche la Proprietà FILTER delle
Form viene rieseguita ServerSide ottimizzando l'estrazione dati....
Ricorda oltretutto che Access, a meno di usare ADP, usa sempre DAO...
pertanto non credo sia il massimo passare per un provider ADO che
viene riconvertito da JET-ENGINE in DAO...
@Alex
frequentemente satement SQL/400 del tipo SELECT.... UPDATE.... e... resync e
dando all'utente una maschera su snapshot scaricati localmente... ma la vedo
ardua.
Aspetto vostri suggerimenti.