Quoting Chris Schirlinger <[EMAIL PROTECTED]>: > > I wouldn't sell the BDE-style components short, as they may be useful > > for some, if well-written and well-documented, but I like simple.
The (Borland) BDE is a lot of overhead conceirning database access, but it's a transparent layer allowing to develop applications without knowing which database is used (within the supported types of course). If that's important: use the bde (Although SQLite is not supported as far as I know). There are VCL components around accessing SQLite directly.These components work directly on the API set of SQLite avoiding a lot of overhead the BDE has. However they do allow you to access the database is the standard well documented Borland way. Don't ever use 'locate' on a sql type database. This is always by far slower than accessing the sql way. Locate requires a resultset you can walk through up and down, this cannot be done in simple sql. There are two types of wrappers, one that is not data-aware (like the Tim Anderson components) and data-aware, like our's. In both cases they use standard VCL stuff so there's a little overhead. But surely not as dramatic as suggested. But there's one condition. Use transactions! Without them, you'll never get a good performance. Of course anybody must use what he/she likes most. Directly accessing the API is technical, you need to know lot's about pointers, you need to convert the datatypes etc. etc. It's more work, but it's more fun too. That's why I created the VCL part and I can understand why others like to access the API directly too. But on the speed part... albert

