Hullo Andrew -
I meant exactly what I said - ado.net with vfp as the backend.
If you are developing in C#, then I'll make a huge leap and assume you have
the entire dot net framework available to you. If not, my apologies. Lotsa
folk use the ado.net 'thing' when writing up a dot-something application. I
just assumed you had it available to you and were using it.
When you say 'a language like SQL' then I have to worry -
as 'SQL' with what you are doing, as is, is mostly an idea, not a language.
There is T-SQL with ms-sql server,
sql variant language built INTO Visual FoxPro
sql variant language available to use inside of any dot net language, always
shoved through a data later or transport of some kind to get to a back end
database.
If you were writing your app in VFP, you could take advantage of the SQL
variant language built in to VFP, which in turn takes advantage of VFP's
RushMore technology, which in turn is blindingly fast as you have indexed
your tables properly and indexed your tables to match the criteria on any
sql join clause, where clause.
Simce you are writing in C#, you have to pay attention to the data layers
and data engines available to you.
MOST folk are using ado.net with C# with vfp as the back end as opposed to
odbc or oledb access.
I would suggest you monitor your network traffic during your data gathering
process, using the FileMon utils now availble free as a d/l from MicroSoft.
Another assumption - when you say 'SQL' below - you mean the sql pass
through available to you via oledb to query a VFP table in C# - so with that
as an assumption - when you say 'What does Visual Objects do that SQL
doesn't?' - that answer is easy - it access the data natively without
another layer of 'stuff' in the way.
By default - dbf native file access is fast fast fast. One can make it
faster by using VFP natively with it's Rushmore Technology.
Also by default - you will have speed issues across the network if you do
NOT set up some server component or server as I mentioned in a previous
reply. You are not using VFP natively, so you won't be seeing any speed
demon access-times with just slogging through a VFP table through oledb or
odbc. Sorry. and JUST TO BE CLEAR - odbc or oledb is NOT native dbf file
access.
Also in a previous reply, I mentioned the Sydney VFP Users Group in Oz. I
reiterate to you - contact one of the officers, acquire a hands-on mentor
for a few days at your site/office . Whilst posting your q's here is
'nice' - you really aren't painting the entire picture of your application
development environment, your application design, your data needs, etc etc.
I will assume you cannot be forthcoming mostly because you are dealing with
company proprietary stuff. You can overcome that by hiring a hands-on
mentor, signing at least a non-disclosure agreement, and going forth with a
2 to 3 day mentoring session.
Here's one last thought - you said:
"We tried using p-invoke to a CA-Visual Objects DLL so that it would
Post by Feldasparget the data for us in to a DBF and then we just grabbed the data out
of that one DBF, but it was still very slow."
If you can do that, then you can also build a server program in VFP that
runs ON the server where the data resides. Would suggest you build a server
compenent IN VFP that you can access in C# from across your network.
Remember - VFP is 3 things at once - a programming language, an IDE for
RAD/D and a database. You aren't taking advantage , so far, of anything
that VFP can offer you - You are only approaching your project from a
standpoint of 'we have a dbf file - lets access it somehow via oledb or
odbc'
If you have a MSDN subscription of Pro or better, you will find VFP on the
download section in the subscriber area (once you log in) - get it, download
it, use it.
My apologies if my written tone seems a bit harsh - please remember I had to
clean up my keyboard from the coffee spritz I incurred after reading your
last reply to me.
Mondo Regards [Bill]
--
===================
William Sanders / EFG VFP / mySql / MS-SQL
www.efgroup.net/vfpwebhosting
www.terrafox.net www.viasqlserver.net
Post by FeldasparHi Bill,
What do you mean by this?
What I dont understand
(i'm not really in to DBF's) is why a language like Visual Objects can
access the data relatively quickly but a language like SQL is slow.
What does Visual Objects do that SQL doesn't? Is it to do with the
indexes? Can I utilise the indexes in my SQL query somehow?
Post by swdev2Do you see any speed difference when you use ado.net with vfp as the
backend?
Regards [Bill]
--
===================
William Sanders / EFG VFP / mySql /
MS-SQLwww.efgroup.net/vfpwebhostingwww.terrafox.net www.viasqlserver.net
Post by FeldasparPost by swdev2Post by FeldasparHi,
I'm using C# to accessing DBF data using the vfpoledb.1 driver. When i
run queries from the appliction on the same machine that the database
resides on the queries are fast, but when i try to run them over the
network, (database on one machine, my C# app on another machine) they
run very, very, very slow.
Anyone had any experience with this area and could offer suggestions?
Andrew- Hide quoted text -
- Show quoted text -