||Re: complex indexes vs index key fields
Mervyn Bick <firstname.lastname@example.org>
||Tue, 28 Jul 2020 10:55:06 +0200
On 2020-07-28 07:02, Gaetano De Luisi wrote:
> It seems that 32-bit is the only one visible to the BDE administrator. Now I realise that those are drivers and the 32/64 bit versions are not interchangeable...
dBASE is 32-bit so you definitely need the 32-bit ODBC driver. This
should access 64_bit MySQL. It is probably a good idea to also install
the 64-bit driver as well "just in case". :-) Just make sure you use
the 32-bit driver in your dBASE connection strings.
> I have two choices still: ANSI or Unicode. For testing purposes I chose ANSI as I only need accented characters, not the whole range of encodeable characters, but I must say I don't fully understand the implications. The description of the database on the server says latin-swedish-case insensitive, so that seems to match the ANSI character set as far as my character set knowledge goes.
If you, or your users, don't read a language which needs Unicode to
store it's characters you don't need Unicode. :-)
> I tried ANSI and was able to set up the the ODBC alias and the BDE alias. After stumbling on a few hurdles, the following tutorial helped me create a table from dBase into the SQL database (http://www.dbasehost.com/tutorials/mysql1.php).
Part of the advantage of moving to a SQL server is no longer being
dependent on the BDE. Use ADO instead. To make the tables visible in
the Navigator set up a Connection Alias in Desktop Properties.
You could manage MySql from dBASE but you would be be far better served
by getting a dedicated MySql manager. The freeware version of EMS SQL
Manager for MySql should be more than adequate to get started with.
> I then tried to append the data from my DBF file to the server but that is taking forever, about 350 records per minute... can I interrupt the append process without corrupting teh database? can you suggest a more efficient way to load data to the database server?
I don't use MySQL but I could insert the 7577 records in the test data
you sent me into Firebird in 45 seconds. That's not particularly fast
but it's a bit quicker than 3.6 hours at 35 records per minute. :-)
MySql is known to be geared more to reading speed rather than writing
speed but 35 records a minute is ridiculous. There has to be a way of
speeding things up. Akshat can be of more help here than I can as I
don't use MySql but if you show us how you load the data perhaps we can