Hi Ken,
Take a look at postgres. Like MySQL, it is open source and free. It will work with very large tables. You can also access your postgres data vai VFP views. It is alot like Oracle and allows for the use of functions, triggers, Referential Integrity checking, stored procedure in a number of languages, etc. I have written a VFP frontend client to a postgres backend server as an example app. It uses sqlexec() almost exclusively to talk to the backend server. I provide the postgres databases so that anyone can download the app, install the ODBC drive, and then connect to my postgres Database/Table to run the example app. The latest version of the example app can be found at:
https://www.smvfp.comThe name of the download is smsql.zip
I also use postgres as a backend database server to my web site. I access the postgres tables using the perl DBI and have never had any trouble with it. Using the perl DBI is just like using VFP sqlexec() in that you build the sql string, prepare it, and the send it to the backend for execution. It is a really simple way to access a backend database server via a web site.
Postgres works best on Linux and comes installed and ready to go on most Linux Distributions. There should be a native postgres install under windows in the near future.
The postgres web site is:
http://www.postgres.org