At 18:34 10.12.2009, Sérgio Trindade wrote: >I'm using the latest version of DISQLite3 (v2.1.2) personal edition on Delphi >7 and have the following issue: the internal routines only distinguish from >having *NO* password set and having *ANY* password, i.e.: *DISQLite3 Personal* supports a single password only (see http://www.yunqa.de/delphi/doku.php/products/sqlite3/feature_chart). This password is 'personal' and is statically built into the library. It can not be changed. It can only be switched on and off. Pass any non-empty string to sqlite_key() to turn it on, or an empty string to turn it off. *DISQLite3 Pro* has no restrictions on passwords. Different strings passed to sqlite3_key() will result in differently encrypted databases. This is documented in the DISQLite3 Help's sqlite3_key() topic. >* If I create a database with NO password and try to open it with ANY >password, e.g. ?123?, Database.Open correctly fails; Correct. >* If I create a database with password ?123? and try to open it with NO >password, Database.Open correctly fails; Correct. >* If I create a database with password ?123? and try to open it with password >?456?, Database.Open incorrectly succeeds! You are right for DISQLite3 Pro (any password), but this is the expected for DISQLite3 Personal (single password only). Read the same file with DISQLite3 Pro (or SQLiteSpy) and it will open only with the password set to 'personal'. Ralf _______________________________________________ Delphi Inspiration mailing list yunqa@xxxxxxxxxxxxx //www.freelists.org/list/yunqa