On Apr 18, 2005, at 7:27 AM, Stephen Barncard wrote:

Trevor, thanks again for your DB library. It is very useful and motivational.. and example of great coding...

You are welcome and thanks for the complement.

Will the new library be backwards compatible? Should all I have to do would be to change the lib name in the code?

Right now most of the calls are backwards compatible except for libdb_updateTable. The order of the array that has the update values and the array that has the search values has been swapped so that it matches libdb_addToTable and the order of the statements in a SQL statement.


The major change will be how error handling is done. Now most of the functions and commands throw errors rather than returning false, etc. I grew tired of constantly writing:

put libdb_getTableRow("mydb", tSQL) into tDataA
if tDataA = false then
        --> ALERT AND LOG ERROR
else
        --> display to user
end if

put libdb_getTableRows("mydb", tSQL) into tDataA
if tDataA = false then
        --> ALERT AND LOG ERROR
else
        repeat with i = 1 to tDataA["Length"]
                --> CREATE LIST FOR USER
        end repeat
end if

especially when making multiple db calls in a single handler.

Now you do something like this:

try
        put libdb_getTableRow("mydb", tSQL) into tDataA
        --> display to user
        
        put libdb_getTableRows("mydb", tSQL) into tDataA
        repeat with i = 1 to tDataA["Length"]
                --> CREATE LIST FOR USER
        end repeat
        
catch e
        if item 1 of e = "libdberr" then
                --> ALERT AND LOG ERROR
        end if
end try

Most of the other changes will be transparent to you. I now use binding so that libdb supports binary data with the "*b" prefix before a field name in an array. I've added a setting that will run macToISO and isoToMac transparently for you on Mac (so all values are stored in iso format in the db) so that you don't have high ascii characters displaying funny on different platforms when fetched from the database.

I'm in the middle of adding the code to do sql dumps. This will allow you to create sql backups of your database without any additional utilities or to create SQLite or Valentina databases from a MySQL, Postgresql, etc. database.


-- Trevor DeVore Blue Mango Multimedia [EMAIL PROTECTED]

_______________________________________________
use-revolution mailing list
[email protected]
http://lists.runrev.com/mailman/listinfo/use-revolution

Reply via email to