chickadee » sqlite3pth

sqlite3pth

Overview

Requirements

sql-null, pthreads, srfi-18, srfi-34, llrb-tree, miscmacros, srfi-1

API

(: sql-index (:sql-result: string --> (or false fixnum)))procedure

convert field name to index

(: sqlite3-prepare ((struct <sqlite3-database>) string --> (struct <sqlite3-statement>)))procedure

Prepare query.

(: sqlite3-exec ((struct <sqlite3-database>) (or string (struct <sqlite3-statement>)) #!rest -> :sql-result:))procedure

Execute statement or prepared query.

(: sqlite3-call-with-transaction ((struct <sqlite3-database>) (procedure ((procedure (string #!rest) :sql-result:)) :sql-result:) -> :sql-result:))procedure

Call procedure in a sqlite transaction.

sqlite3-call-test/setprocedure

questionable, undocumented

(: sqlite3-close ((struct <sqlite3-database>) -> . *))procedure

Close database.

sqlite3-interrupt!procedure

Call sqlite_interrupt to abort running query.

sql-result?procedure

Test predicate for the sql result type.

sql-value RESULT ROW FIELDprocedure

Result Accessor.

(: sql-ref (:sql-result: (or boolean fixnum) (or boolean fixnum string symbol) --> *))procedure
(: sql-fold (:sql-result: (procedure ((procedure (fixnum) *) *) *) * -> *))procedure

Fold procedure over results.

sqlite3-openprocedure
sqlite3-closeprocedure
(: sqlite3-open-restricted (string #!optional string vector --> (struct <sqlite3-database>)))procedure

Restricted open optionally with VFS. SQL may not attach other files. optional string requests sqlite3 VFS, vector holds VFS callbacks

(: sqlite3-open-restricted-ro (string #!optional string vector --> (struct <sqlite3-database>)))procedure

Restricted open read only optionally with VFS. SQL may not attach other files. optional string requests sqlite3 VFS, vector holds VFS callbacks

Accessors

   sqlite3-database-name
   sqlite3-changes
   sqlite3-statement?
   sqlite3-statement-name
   sqlite3-error? sqlite3-error-code sqlite3-error-args
sqlite3-error-db-locked?procedure

debug aid

sqlite3-debug-statements FLAGprocedure

Log queries.

VFS Interface

The VFS allows to call back to Chicken when sqlite need to read data.

This is currently only lightly documented in tests/run.scm.

Examples

   (define db (sqlite-open "path"))
   (sqlite3-exec db "select 1") ; 1
   (sqlite3-exec db (sqlite3-prepare db "select ?1") 1) ; 1

About this egg

Source Code

Currently maintained here at github.

Author

Jörg F. Wittenberger

License

BSD

Contents »