sqlite-0.4.1: Haskell binding to sqlite3





A Haskell binding to the sqlite3 database. See:

for more information.

The api is documented at:



Opening and closing a database

openConnection :: String -> IO SQLiteHandleSource

Open a new database connection, whose name is given by the dbName argument. A sqlite3 handle is returned.

An exception is thrown if the database could not be opened.

closeConnection :: SQLiteHandle -> IO ()Source

Close a database connection. Destroys the SQLite value associated with a database, closes all open files relating to the database, and releases all resources.

Executing SQL queries on the database

execStatement :: SQLiteResult a => SQLiteHandle -> String -> IO (Either String [[Row a]])Source

Evaluate the SQL statement specified by sqlStmt

execStatement_ :: SQLiteHandle -> String -> IO (Maybe String)Source

Returns an error, or Nothing if everything was OK.

execParamStatement :: SQLiteResult a => SQLiteHandle -> String -> [(String, Value)] -> IO (Either String [[Row a]])Source

Prepare and execute a parameterized statment. Statement parameter names start with a colon (for example, :col_id). Note that for the moment, column names should not contain 0 characters because that part of the column name will be ignored.

execParamStatement_ :: SQLiteHandle -> String -> [(String, Value)] -> IO (Maybe String)Source

Prepare and execute a parameterized statment, ignoring the result. See also execParamStatement.

Basic insertion operations

insertRow :: SQLiteHandle -> TableName -> Row String -> IO (Maybe String)Source

Insert a row into the table tab.

defineTable :: SQLiteHandle -> SQLTable -> IO (Maybe String)Source

Define a new table, populated from tab in the database.

getLastRowID :: SQLiteHandle -> IO IntegerSource

Return the rowid (as an Integer) of the most recent successful INSERT into the database.

type Row a = [(ColumnName, a)]Source

data Value Source


Show Value 
SQLiteResult Value 

addRegexpSupport :: SQLiteHandle -> RegexpHandler -> IO ()Source

This function registers a RegexpHandler to be called when REGEXP(regexp,str) is used in an SQL query.

type RegexpHandler = ByteString -> ByteString -> IO BoolSource

This is the type of the function supported by the add_regexp_support function. The first argument is the regular expression to match with and the second argument is the string to match. The result shall be True for successful match and False otherwise.