Loading extensions for SQLite
Posted: Mon Nov 15, 2010 10:41 pm
In order to load extensions for SQLite, the following does the trick.
An example of extension can be the math, string and aggregate functions made by Liam Healy and available as source at http://sqlite.org/contrib/download/down ... s.c?get=25
Code: Select all
;ImportC "sqlite3.lib" ; USE THIS FOR WINDOWS. The line below is for Linux
ImportC "$PUREBASIC_HOME/purelibraries/linux/libraries/libpbsqlite3.a"
sqlite3_enable_load_extension(*db, onoff.l)
sqlite3_load_extension( *db, zFile.s, zProc.s, *pzErrMsg );
EndImport
UseSQLiteDatabase()
Debug OpenDatabase(0,"test.sqlite","","")
Debug DatabaseID(0)
Debug sqlite3_enable_load_extension(DatabaseID(0), #True)
Debug sqlite3_load_extension(DatabaseID(0), "libsqlitefunctions.so", "sqlite3_extension_init", @pzErrMsg)
If pzErrMsg>0 : Debug PeekS(pzErrMsg) : EndIf
q.s = "SELECT log(7.52)"
If Not DatabaseQuery(0,q) : Debug DatabaseError()+" - "+q : EndIf
NextDatabaseRow(0)
Debug GetDatabaseFloat(0,0)
FinishDatabaseQuery(0)