"Sarah" <[EMAIL PROTECTED]> wrote: > Hi, John Stanton > > I really really appreciate your warm help. > That's great if you can send me the codes of B tree and B+ tree. > Many thanks in advance. > > My requirements for data access are as follows: > -all the data are stored in non-volatile memory instead of volatile memory > -the footprint of the DARE should be better less than 100KB > -when executing, the memory occupation should be better less than 20KB > -no need for relational access, just key-value retrieval is ok > -all the create, insert, update work can be done outside, however, pretty > fast retrieval is needed > > If there is some open-source DARE(as excellent as SQLite) suitable for my > platform, that will be great. > Orelse, I would try to write a simple one. >
There is a proprietary version of SQLite available which meets these requirements. The "SQLite-SSE" product resides in as little as 70KiB of code space and uses less than 20KiB of ram. SQLite-SSE is basically just SQLite without sqlite3_prepare(). Sqlite3_prepare() is what takes up most of the space in the library. What you do is prepare your SQL statements ahead of time on a workstation and then serialize them into a binary format. You can store the serialized prepared statements in the database, if you like, or you can compile them into your C code. Your embedded device deserializes the prepared statements then uses bind() and step() to run your queries as you normally would. The SQLite-SSE is used on smart-cards with extremely tight memory and power constraints. It is available under license only. -- D. Richard Hipp <[EMAIL PROTECTED]> ----------------------------------------------------------------------------- To unsubscribe, send email to [EMAIL PROTECTED] -----------------------------------------------------------------------------