The cl-mysql Reference Manual

This is the cl-mysql Reference Manual, version 0.1, generated automatically by Declt version 4.0 beta 2 "William Riker" on Sun Sep 15 04:15:41 2024 GMT+0.

Table of Contents


1 Systems

The main system appears first, followed by any subsystem dependency.


1.1 cl-mysql

Common Lisp MySQL library bindings

Maintainer

Steve Knight <>

Author

Steve Knight <>

License

MIT

Version

0.1

Dependency

cffi (system).

Source

cl-mysql.asd.

Child Components

2 Files

Files are sorted by type and then listed depth-first from the systems components trees.


2.1 Lisp


2.1.1 cl-mysql/cl-mysql.asd

Source

cl-mysql.asd.

Parent Component

cl-mysql (system).

ASDF Systems

cl-mysql.


2.1.2 cl-mysql/system.lisp

Source

cl-mysql.asd.

Parent Component

cl-mysql (system).

Packages

com.hackinghat.cl-mysql-system.

Public Interface
Internals

2.1.3 cl-mysql/thread.lisp

Dependency

system.lisp (file).

Source

cl-mysql.asd.

Parent Component

cl-mysql (system).

Public Interface
Internals

2.1.4 cl-mysql/connection.lisp

Dependency

thread.lisp (file).

Source

cl-mysql.asd.

Parent Component

cl-mysql (system).

Public Interface
Internals

2.1.5 cl-mysql/pool.lisp

Dependency

connection.lisp (file).

Source

cl-mysql.asd.

Parent Component

cl-mysql (system).

Public Interface
Internals

2.1.6 cl-mysql/mysql.lisp

Dependency

pool.lisp (file).

Source

cl-mysql.asd.

Parent Component

cl-mysql (system).

Public Interface
Internals

2.1.7 cl-mysql/prepare.lisp

Dependency

mysql.lisp (file).

Source

cl-mysql.asd.

Parent Component

cl-mysql (system).

Public Interface
Internals

2.1.8 cl-mysql/package.lisp

Dependency

prepare.lisp (file).

Source

cl-mysql.asd.

Parent Component

cl-mysql (system).

Packages

com.hackinghat.cl-mysql.


3 Packages

Packages are listed by definition order.


3.1 com.hackinghat.cl-mysql-system

Source

system.lisp.

Nickname

cl-mysql-system

Use List
  • cffi.
  • common-lisp.
Public Interface
Internals

3.2 com.hackinghat.cl-mysql

Source

package.lisp.

Nickname

cl-mysql

Use List

common-lisp.


4 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


4.1 Public Interface


4.1.1 Constants

Constant: +client-compress+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +client-found-rows+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +client-ignore-sigpipe+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +client-ignore-space+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +client-interactive+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +client-local-files+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +client-multi-results+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +client-multi-statements+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +client-no-schema+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +client-remember-options+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +client-ssl+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.


4.1.2 Special variables

Special Variable: *last-database*

The last allocated connection-pool. Note that this special is a default argument to a lot of the higher level API functions.

Package

com.hackinghat.cl-mysql-system.

Source

pool.lisp.

Special Variable: *type-map*
Package

com.hackinghat.cl-mysql-system.

Source

connection.lisp.


4.1.3 Macros

Macro: with-lock (lock &body body)
Package

com.hackinghat.cl-mysql-system.

Source

thread.lisp.

Macro: with-rows ((var-row query-string &key var-result database type-map) &body body)

Takes a query-string and iterates over the result sets assigning var-row to each individual row. If you supply var-result it will hold the result set sequence number. This macro generates code that does not store the complete result so should be suitable for working with very large data sets.

Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.


4.1.4 Ordinary functions

Function: cffi-utf8-length (cffi-string)

We need this function because mysql_real_escape_string requires the length of the from string in bytes (not characters)

Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: client-version ()

Returns a three part list containing the decoded client version information

Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: connect (&key host user password database port socket client-flag min-connections max-connections)

Connect will present to MySQL sensible defaults for all the connection items.
The following code will attach you to a MySQL instance running on localhost,
as the current user with no password. It will automatically turn on
compression between client-and-server and also enable multiple-result sets
if possible.

<pre><code>CL-USER> (connect)</code></pre>

If unsuccesful connect will raise a <strong>CL-MYSQL-ERROR</strong>, otherwise it will place
the connection into a pool, note that all connections are pool-able,
a single connection is simply the special case of a pool with only one
connection.

The pool has two slots, <strong>min-connections</strong> and <srong>max-connections</strong>. There will always be min-connections available in the pool. If you are using all
min-connections and max-connections is greater than min-connections,
the pool will continue to allocate connections until max-connections are
used. After this an attempt to aquire more connections from the pool
should block (if your implementation supports it). When a connection is
released (this is done automatically unless you explicity disable it) the
connection to the server is closed if we have allocated more connections
than min-connections.

The last allocated pool object is placed into a special variable
<strong>*last-database*</strong> which is defaulted from the higher level API functions.

Package

com.hackinghat.cl-mysql-system.

Source

pool.lisp.

Function: disconnect (&optional database)

This method will disconnect all the connections in the pool. Note that if you attempt to use the pool again after calling this method it will re-allocate upto min-connections before servicing your request.

Package

com.hackinghat.cl-mysql-system.

Source

pool.lisp.

Function: escape-string (string &key database)

Given a string, encode it appropriately. This function relies on the fact that the character set encoding was set to UTF-8 when the connection is made.

Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: extract-field (row field-index field-length type-map field-detail)

Returns either a string or an unsigned byte array for known binary types. The designation of binary types per the C API seems a bit weird. Basically, BIT, BINARY and VARBINARY are binary and so are BLOBs with the binary flag set. It seems that other fields also have the binary flag set that are not binary and the BIT type, whilst binary doesn’t have the flag set. Bizarre-o.

Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: list-dbs (&key database)
Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: list-fields (table &key database)
Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: list-processes (&key database)
Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: list-tables (&key database)
Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: make-lock (name)
Package

com.hackinghat.cl-mysql-system.

Source

thread.lisp.

Function: mysql-error (mysql)

http://dev.mysql.com/doc/refman/5.0/en/mysql-error.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: nth-row (result-set-list n &optional nth-result-set)

Return the nth-row of the nth-result set.

Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: option (option value &key database)

Use this to set a client specific connection option. CL-USER> (option :opt-reconnect 1)

Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: ping (&key database)

Check whether a connection is established or not. If :opt-reconnect is set and there is no connection then MySQL’s C API attempts a reconnection.

Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: query (query &key type-map database store)

For a SELECT query or stored procedure that returns data, query will return
a list of result sets. Each result set will have 1 or more sublists
where the first sublist contains the column names and the remaining lists
represent the rows of the result set. If the query does not return a result
set (for example if the query is an INSERT, UPDATE) the return value is the
number of rows affected. Because cl-mysql supports multiple-statements
you can execute code like the following:

<pre><code>CL-MYSQL-SYSTEM> (query "CREATE TABLE a(a INT);
INSERT INTO a (a) VALUES (1); DELETE FROM a; DROP TABLE a")
((0) (1) (1) (0))</code></pre>

The type-map, if set will alter the decoding into CL types. If you set
this to nil it will have the effect of disabling all CL type conversions
and return either character or binary data only.

This might be useful for performance reasons, (cl-mysql
is much faster when it doesn’t need to translate types) but it also might
be all you need. Consider for instance if you’re displaying a lot of
numerics on a web-page. If you do not need to convert the data into
floats/integers before displaying them on a page then raw could be useful
here too. cl-mysql attempts to convert all numeric types to their closest
CL representation. For very large numerics, or numerics that have very
high precision this might not be what you want. In this case you could
attempt to write your own conversion routine and inject it into cl-mysql
through the type-map.

The currented supported conversions are as follows (MySQL type -> CL type):

<ul><li><strong>DECIMAL/NUMERIC</strong> -> RATIO</li> <li><strong>INT/TINYINT/SMALLINT/MEDIUMINT/BIGINT/YEAR</strong> -> INTEGER</li> <li><strong>FLOAT/REAL/DOUBLE PRECISION</strong> -> DOUBLE-FLOAT</li> <li><strong>DATE/DATETIME/TIMESTAMP</strong> -> INTEGER (Universal time)</li>
<li><strong>TIME</strong> -> INTEGER (Seconds)</li> <li><strong>CHAR/VARCHAR/TEXT/TINYTEXT/MEDIUMTEXT/LONGTEXT</strong> -> STRING</li> <li><strong>BIT/BLOB/MEDIUMBLOB/LONGBLOB/TINYBLOB/GEOMETRY</strong> -> SIMPLE-ARRAY ’(UNSIGNED-BYTE 8 )</li> </ul>

If :store is T query returns a list of result sets. Each result set is a
list with the first element set to the data and the second elements set to
the column data. Since this structure can be a little awkward to handle
you can use nth-row to manipulate the structure more sanely.

If :store is NIL query returns the allocated connection object. You should
use next-result-set and next-row to step through the results.

Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: server-version (&key database)

Returns a three part list containing the decoded server version information

Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: start-thread-in-nsecs (fn n)
Package

com.hackinghat.cl-mysql-system.

Source

thread.lisp.

Function: string-to-date (string &optional len)
Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: string-to-float (string len)

Convert a MySQL float representation into a double. Note that we could do better on DECIMAL/NUMERICs that have 0 places after the decimal.

Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: string-to-integer (string &optional len)
Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: string-to-ratio (string len)
Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: string-to-seconds (string &optional len)

Fairly ugly function to turn MySQL TIME duration into an integer representation.
It’s complicated because of ... well, read this: http://dev.mysql.com/doc/refman/5.0/en/time.html

Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: string-to-universal-time (string &optional len)
Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: use (name &key database)

Equivalent to running: CL-USER> (query "USE <name>")

Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: wait-on-threads (threads)
Package

com.hackinghat.cl-mysql-system.

Source

thread.lisp.


4.1.5 Generic functions

Generic Function: aquire (self block)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: aquire ((self connection) block)
Source

pool.lisp.

Method: aquire ((self connection-pool) block)

Aquire from the pool a single connection object that can be passed to higher level API functions like QUERY.

On implementations that support threading this method will block if :block is T, and available connections is 0 and there are already max-connections. On implementations that do not support threading this method will always return NIL.

Source

pool.lisp.

Method: aquire (self block)
Source

pool.lisp.

Generic Function: available (self)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: available ((self connection))
Source

connection.lisp.

Generic Reader: available-connections (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: available-connections ((connection-pool connection-pool))

automatically generated reader method

Source

pool.lisp.

Target Slot

available-connections.

Generic Writer: (setf available-connections) (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Writer Method: (setf available-connections) ((connection-pool connection-pool))

automatically generated writer method

Source

pool.lisp.

Target Slot

available-connections.

Generic Function: bind (self sql-type &optional supplied-index max-len)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: bind ((self statement) sql-type &optional supplied-index max-len)

Set up the bind structure for later use

Source

prepare.lisp.

Generic Function: bind-arg (self index)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: bind-arg ((self statement) index)
Source

prepare.lisp.

Generic Reader: bound-map (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: bound-map ((statement statement))

automatically generated reader method

Source

prepare.lisp.

Target Slot

bound-map.

Generic Writer: (setf bound-map) (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Writer Method: (setf bound-map) ((statement statement))

automatically generated writer method

Source

prepare.lisp.

Target Slot

bound-map.

Generic Function: can-aquire (self)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: can-aquire ((self connection-pool))

Returns true if a call to aquire would result in a connection being allocated

Source

pool.lisp.

Generic Function: configure-bindings (self nargs)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: configure-bindings ((self statement) nargs)

Sets up a statement object ready to receive nargs bindings

Source

prepare.lisp.

Generic Function: connected (self)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: connected ((self connection))
Source

connection.lisp.

Generic Function: connection-equal (self other)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: connection-equal ((self connection) (other connection))

Two connections are equal if they point to the same memory location.

Source

connection.lisp.

Method: connection-equal (self other)
Source

connection.lisp.

Generic Reader: connections (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: connections ((connection-pool connection-pool))

automatically generated reader method

Source

pool.lisp.

Target Slot

connections.

Generic Writer: (setf connections) (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Writer Method: (setf connections) ((connection-pool connection-pool))

automatically generated writer method

Source

pool.lisp.

Target Slot

connections.

Generic Function: contains (self array conn)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: contains ((self connection-pool) array conn)
Source

pool.lisp.

Generic Function: count-connections (self)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: count-connections ((self connection-pool))

Count the number of connections in the pool. If you are dynamically changing the size of the pool after it is created this number could be greater or less than max/min connections. Set :available-only if you only want to know how many connections are currently ready to use.

Source

pool.lisp.

Generic Reader: in-use (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: in-use ((connection connection))

automatically generated reader method

Source

connection.lisp.

Target Slot

in-use.

Generic Writer: (setf in-use) (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Writer Method: (setf in-use) ((connection connection))

automatically generated writer method

Source

connection.lisp.

Target Slot

in-use.

Generic Reader: max-connections (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: max-connections ((connection-pool connection-pool))

automatically generated reader method

Source

pool.lisp.

Target Slot

max-connections.

Generic Function: (setf max-connections) (pool)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: (setf max-connections) ((pool connection-pool))

Change the maximum number of connections available in the pool. Note that you can change this value whilst the pool is waiting for a connection to become available.

Source

pool.lisp.

Generic Reader: min-connections (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: min-connections ((connection-pool connection-pool))

automatically generated reader method

Source

pool.lisp.

Target Slot

min-connections.

Generic Function: (setf min-connections) (pool)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: (setf min-connections) ((pool connection-pool))

Change the minimum number of connections available in the pool. Note that you can change this value whilst the pool is waiting for a connection to become available.

Source

pool.lisp.

Generic Function: next-index (self)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: next-index ((self statement))

Returns the next unbound index or throws an error if there isn’t one. This
is just a convenience method to allow bind to be called on a simple list of types: CL-USER> mapcar (lambda (x) (bind a-statement x)) (:LONG :STRING :FLOAT))

Source

prepare.lisp.

Generic Function: next-result-set (self &key dont-release store)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: next-result-set ((self connection) &key dont-release store)

Position for the the next result set. Returns T if there is a result
set to process and NIL when the last result set has been passed.

sets. Use this method with (query "SELECT" :store NIL). Call next-result-set to position on the first result set then use next-row to fetch all the individual rows.

Use dont-release if you don’t want cl-mysql to release all the resources when the last result set has been processed. This might be useful, for instance, if you need access to the fields through result-set-fields after the result set has been processed.

You can, if you wish elect to not process each individual row of a result set by setting :store T. However, you cannot then use next-row because you must process the entire result set in one go.

<pre><code>CL-USER> (query "SELECT ..." :store nil)
CL-USER> (next-result-set *)
T
CL-USER> (next-row **)
...</code></pre>

Source

connection.lisp.

Generic Function: next-row (self &key type-map)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: next-row ((self connection) &key type-map)

Retrieve and decode (according to the type map) the next row in the query. This function will return NIL when the last row has been retrieved.

Source

connection.lisp.

Generic Reader: pointer (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: pointer ((statement statement))

automatically generated reader method

Source

prepare.lisp.

Target Slot

pointer.

Reader Method: pointer ((connection connection))

automatically generated reader method

Source

connection.lisp.

Target Slot

pointer.

Generic Writer: (setf pointer) (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Writer Method: (setf pointer) ((connection connection))

automatically generated writer method

Source

connection.lisp.

Target Slot

pointer.

Generic Reader: pool-lock (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: pool-lock ((connection-pool connection-pool))

automatically generated reader method

Source

pool.lisp.

Target Slot

pool-lock.

Generic Writer: (setf pool-lock) (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Writer Method: (setf pool-lock) ((connection-pool connection-pool))

automatically generated writer method

Source

pool.lisp.

Target Slot

pool-lock.

Generic Function: process-result-set (self type-map)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: process-result-set ((self connection) type-map)

Returns a CONS of all the data in the result set. Note that this method should only be called by the client if you originally sent :store NIL to query but then set :store to T when calling next-result-set.

Source

connection.lisp.

Generic Function: release (connectable &optional other-args)

Calling release will place the connection back into the pool. If the pool has more connections than max-connections then releasing the connection will close it and deallocate it.

Package

com.hackinghat.cl-mysql-system.

Source

connection.lisp.

Methods
Method: release ((self connection-pool) &optional conn)

Release a connection back into the pool.

Source

pool.lisp.

Method: release ((self connection) &optional conn)

Convenience method to allow the release to be done with a connection

Source

pool.lisp.

Generic Reader: result-set (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: result-set ((connection connection))

automatically generated reader method

Source

connection.lisp.

Target Slot

result-set.

Generic Writer: (setf result-set) (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Writer Method: (setf result-set) ((conn connection))
Source

connection.lisp.

Target Slot

result-set.

Generic Reader: result-set-fields (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: result-set-fields ((connection connection))

automatically generated reader method

Source

connection.lisp.

Target Slot

result-set-fields.

Generic Writer: (setf result-set-fields) (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Writer Method: (setf result-set-fields) ((connection connection))

automatically generated writer method

Source

connection.lisp.

Target Slot

result-set-fields.


4.1.6 Standalone methods

Method: initialize-instance :after ((self connection-pool) &rest initargs)

The connection arrays need to be set-up after the pool is created.

Source

pool.lisp.


4.1.7 Conditions

Condition: cl-mysql-error
Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Direct superclasses

error.

Direct methods

cl-mysql-error-message.

Direct slots
Slot: message
Initargs

:message

Readers

cl-mysql-error-message.

Writers

This slot is read-only.

Condition: mysql-error
Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Direct superclasses

error.

Direct methods
Direct slots
Slot: message
Initargs

:message

Readers

mysql-error-message.

Writers

This slot is read-only.

Slot: errno
Initargs

:errno

Readers

mysql-error-errno.

Writers

This slot is read-only.


4.1.8 Classes

Class: connection

The slots necessary to manage a MySQL database connection.

Package

com.hackinghat.cl-mysql-system.

Source

connection.lisp.

Direct superclasses

connectable.

Direct methods
Direct slots
Slot: pointer
Initform

(cffi-sys:null-pointer)

Initargs

:pointer

Readers

pointer.

Writers

(setf pointer).

Slot: result-set
Initform

(cffi-sys:null-pointer)

Readers

result-set.

Writers

(setf result-set).

Slot: in-use
Type

(or null t)

Initargs

:in-use

Readers

in-use.

Writers

(setf in-use).

Slot: owner-pool
Initargs

:owner-pool

Readers

owner-pool.

Writers

This slot is read-only.

Slot: result-set-fields
Type

list

Readers

result-set-fields.

Writers

(setf result-set-fields).

Slot: use-query-active
Type

(or null t)

Readers

use-query-active.

Writers

(setf use-query-active).

Class: connection-pool

All connections are initiated through a pool.

Package

com.hackinghat.cl-mysql-system.

Source

pool.lisp.

Direct superclasses

connectable.

Direct methods
Direct slots
Slot: hostname
Initargs

:hostname

Readers

hostname.

Writers

This slot is read-only.

Slot: username
Initargs

:username

Readers

username.

Writers

This slot is read-only.

Slot: password
Initargs

:password

Readers

password.

Writers

This slot is read-only.

Slot: database
Initargs

:database

Readers

database.

Writers

This slot is read-only.

Slot: port
Initform

0

Initargs

:port

Readers

port.

Writers

This slot is read-only.

Slot: socket
Initargs

:socket

Readers

socket.

Writers

This slot is read-only.

Slot: flags
Initform

0

Initargs

:flags

Readers

flags.

Writers

This slot is read-only.

Slot: min-connections
Initform

1

Initargs

:min-connections

Readers

min-connections.

Writers

This slot is read-only.

Slot: max-connections
Initform

1

Initargs

:max-connections

Readers

max-connections.

Writers

This slot is read-only.

Slot: available-connections
Type

(or array null)

Readers

available-connections.

Writers

(setf available-connections).

Slot: connections
Type

(or array null)

Readers

connections.

Writers

(setf connections).

Slot: pool-lock
Initform

(com.hackinghat.cl-mysql-system:make-lock "pool lock")

Readers

pool-lock.

Writers

(setf pool-lock).

Slot: wait-queue-lock
Initform

(com.hackinghat.cl-mysql-system:make-lock "queue lock")

Readers

wait-queue-lock.

Writers

(setf wait-queue-lock).

Slot: wait-queue
Initform

(com.hackinghat.cl-mysql-system::make-wait-resource)

Readers

wait-queue.

Writers

(setf wait-queue).

Class: statement

A holder for a MYSQL_STMT structure

Package

com.hackinghat.cl-mysql-system.

Source

prepare.lisp.

Direct methods
Direct slots
Slot: pointer
Initform

(cffi-sys:null-pointer)

Initargs

:pointer

Readers

pointer.

Writers

This slot is read-only.

Slot: database
Initargs

:database

Readers

database.

Writers

This slot is read-only.

Slot: nargs
Initargs

:nargs

Readers

nargs.

Writers

(setf nargs).

Slot: args
Initform

(cffi-sys:null-pointer)

Initargs

:args

Readers

args.

Writers

(setf args).

Slot: bound-map
Initargs

:bound-map

Readers

bound-map.

Writers

(setf bound-map).

Slot: fully-bound
Readers

fully-bound.

Writers

(setf fully-bound).


4.2 Internals


4.2.1 Constants

Constant: *sleep-period*
Package

com.hackinghat.cl-mysql-system.

Source

thread.lisp.

Constant: +cant-read-charset+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +commands-out-of-sync+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +conn-host-error+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +conn-unknow-protocol+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +connection-error+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +data-truncated+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +embedded-connection+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +error-first+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +fetch-canceled+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +field-auto-increment+

Field is auto increment

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +field-binary+

Field is binary

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +field-blob+

Field is a blob

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +field-enum+

Field is an enum

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +field-multiple-key+

Field is part of a key

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +field-no-default+

Field doesn’t have a default value

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +field-not-null+

Field can’t be null

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +field-num+

Field is num

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +field-primary-key+

Field is part of a primary key

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +field-set+

Field is a set

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +field-timestamp+

Field is a timestamp

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +field-unique-key+

Field is part of a unique key

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +field-unsigned+

Field is unsigned

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +field-zerofill+

Field is zerofill

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +invalid-buffer-use+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +invalid-conn-handle+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +invalid-parameter-no+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +ipsock-error+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +localhost-connection+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +malformed-packet+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +namedpipe-connection+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +namedpipeopen-error+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +namedpipesetstate-error+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +namedpipewait-error+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +net-packet-too-large+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +no-data+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +no-parameters-exists+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +no-prepare-stmt+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +no-result-set+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +no-stmt-metadata+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +not-implemented+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +null-pointer+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +out-of-memory+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +params-not-bound+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +probe-master-connect+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +probe-slave-connect+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +probe-slave-hosts+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +probe-slave-status+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +secure-auth+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +server-gone-error+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +server-handshake-err+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +server-lost+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +server-lost-extended+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +shared-memory-connect-abandoned-error+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +shared-memory-connect-answer-error+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +shared-memory-connect-file-map-error+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +shared-memory-connect-map-error+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +shared-memory-connect-request-error+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +shared-memory-connect-set-error+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +shared-memory-connection+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +shared-memory-event-error+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +shared-memory-file-map-error+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +shared-memory-map-error+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +socket-create-error+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +ssl-connection-error+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +tcp-connection+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +unknown-error+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +unknown-host+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +unsupported-param-type+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +version-error+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +wrong-host-info+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Constant: +wrong-license+
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.


4.2.2 Special variables

Special Variable: *binary-types*
Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Special Variable: *debug*
Package

com.hackinghat.cl-mysql-system.

Source

pool.lisp.

Special Variable: *default-sequence-length*

This is the maximum length that a sequence sent as a bound parameter can be It’s a bit lame really. How it should really work is that ’bind’ gives you a binding and re-binds (if that’s possible) when the buffer is too small.
In practice, though, I doubt it matters very much.

Package

com.hackinghat.cl-mysql-system.

Source

prepare.lisp.

Special Variable: *generate-alt-fns*

Compile the library with this value equal to T to get the indirection facility. For more performance (because there is no wrapper around the CFFI wrapper!) set this value to NIL

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Special Variable: *mysql-dev-api-url*

MySQL uses a standard page naming convention that matches our function names!

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Special Variable: *stmt-ctype-map*
Package

com.hackinghat.cl-mysql-system.

Source

prepare.lisp.


4.2.3 Macros

Macro: defmysqlfun ((name internal-name) return-type &body args)

Takes a mysql function name as a string and registers the
appropriate CFFI function as internal-name.

If *generate-alt-fns* is T internal-name that denotes T a wrapper function that sits around the function lib<internal-name>.

This function will call the lib<internal-name>, unless there is an ’alt-fn property set on the function’s symbol. If such a function exists it is called instead.

e.g.
CL-USER> (connect)
CL-USER> (setf (get ’mysql-close ’alt-fn) (lambda (db)
(print "Closing! ") (libmysql-close db)))
CL-USER> (disconnect)
Closing!

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Macro: with-connection ((var &optional database release) &body body)
Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.


4.2.4 Ordinary functions

Function: %set-int-option (option value &key database)
Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: %set-string-option (option value &key database)
Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: decode-version (int-version)

Return a list of version details <major> <release> <version>

Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: error-if-non-zero (database return-value)
Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: error-if-null (database return-value)
Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: error-if-null-with-fields (database return-value)
Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: error-if-set (database)
Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: force-kill ()

Internal convenience function to clean up connections

Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: get-character-set-info (&key database)

Returns the character set information for the connection as a sequence: (collation name number state)

Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: get-field (column-name field-names-and-types row)

Returns the correct element in the sequence from the row that matches the column-name

Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: make-wait-resource ()
Package

com.hackinghat.cl-mysql-system.

Source

thread.lisp.

Function: mysql-affected-rows (mysql)

http://dev.mysql.com/doc/refman/5.0/en/mysql-affected-rows.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-character-set-name (mysql)

http://dev.mysql.com/doc/refman/5.0/en/mysql-character-set-name.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-close (mysql)

http://dev.mysql.com/doc/refman/5.0/en/mysql-close.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-errno (mysql)

http://dev.mysql.com/doc/refman/5.0/en/mysql-errno.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-escape-string (to from length)

http://dev.mysql.com/doc/refman/5.0/en/mysql-escape-string.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-fetch-field (mysql-res)

http://dev.mysql.com/doc/refman/5.0/en/mysql-fetch-field.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-fetch-fields (mysql-res)

http://dev.mysql.com/doc/refman/5.0/en/mysql-fetch-fields.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-fetch-lengths (mysql-res)

http://dev.mysql.com/doc/refman/5.0/en/mysql-fetch-lengths.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-fetch-row (mysql-res)

http://dev.mysql.com/doc/refman/5.0/en/mysql-fetch-row.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-field-count (mysql)

http://dev.mysql.com/doc/refman/5.0/en/mysql-field-count.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-free-result (mysql-res)

http://dev.mysql.com/doc/refman/5.0/en/mysql-free-result.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-get-character-set-info (mysql cs)

http://dev.mysql.com/doc/refman/5.0/en/mysql-get-character-set-info.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-get-client-version ()

http://dev.mysql.com/doc/refman/5.0/en/mysql-get-client-version.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-get-server-version (mysql)

http://dev.mysql.com/doc/refman/5.0/en/mysql-get-server-version.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-init (mysql)

http://dev.mysql.com/doc/refman/5.0/en/mysql-init.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-list-dbs (mysql wild)

http://dev.mysql.com/doc/refman/5.0/en/mysql-list-dbs.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-list-fields (mysql table wild)

http://dev.mysql.com/doc/refman/5.0/en/mysql-list-fields.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-list-processes (mysql)

http://dev.mysql.com/doc/refman/5.0/en/mysql-list-processes.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-list-tables (mysql wild)

http://dev.mysql.com/doc/refman/5.0/en/mysql-list-tables.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-next-result (mysql)

http://dev.mysql.com/doc/refman/5.0/en/mysql-next-result.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-num-fields (mysql-res)

http://dev.mysql.com/doc/refman/5.0/en/mysql-num-fields.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-num-rows (mysql-res)

http://dev.mysql.com/doc/refman/5.0/en/mysql-num-rows.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-options (mysql option arg)

http://dev.mysql.com/doc/refman/5.0/en/mysql-options.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-ping (mysql)

http://dev.mysql.com/doc/refman/5.0/en/mysql-ping.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-query (mysql statement)

http://dev.mysql.com/doc/refman/5.0/en/mysql-query.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-real-connect (mysql host user password database port unix-socket client-flag)

http://dev.mysql.com/doc/refman/5.0/en/mysql-real-connect.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-real-escape-string (mysql to from length)

http://dev.mysql.com/doc/refman/5.0/en/mysql-real-escape-string.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-select-db (mysql db)

http://dev.mysql.com/doc/refman/5.0/en/mysql-select-db.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-set-character-set (mysql csname)

http://dev.mysql.com/doc/refman/5.0/en/mysql-set-character-set.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-stmt-affected-rows (stmt)

http://dev.mysql.com/doc/refman/5.0/en/mysql-stmt-affected-rows.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-stmt-bind-param (stmt bind)

http://dev.mysql.com/doc/refman/5.0/en/mysql-stmt-bind-param.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-stmt-close (stmt)

http://dev.mysql.com/doc/refman/5.0/en/mysql-stmt-close.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-stmt-errno (stmt)

http://dev.mysql.com/doc/refman/5.0/en/mysql-stmt-errno.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-stmt-error (stmt)

http://dev.mysql.com/doc/refman/5.0/en/mysql-stmt-error.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-stmt-execute (stmt)

http://dev.mysql.com/doc/refman/5.0/en/mysql-stmt-execute.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-stmt-init (mysql)

http://dev.mysql.com/doc/refman/5.0/en/mysql-stmt-init.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-stmt-param-count (stmt)

http://dev.mysql.com/doc/refman/5.0/en/mysql-stmt-param-count.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-stmt-prepare (stmt stmt_str length)

http://dev.mysql.com/doc/refman/5.0/en/mysql-stmt-prepare.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-stmt-sqlstate (stmt)

http://dev.mysql.com/doc/refman/5.0/en/mysql-stmt-sqlstate.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-store-result (mysql)

http://dev.mysql.com/doc/refman/5.0/en/mysql-store-result.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: mysql-use-result (mysql)

http://dev.mysql.com/doc/refman/5.0/en/mysql-use-result.html

Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Function: pool-notify (pool)
Package

com.hackinghat.cl-mysql-system.

Source

thread.lisp.

Function: pool-wait (pool)
Package

com.hackinghat.cl-mysql-system.

Source

thread.lisp.

Function: prepare (query &key database)

Prepare a query and return a statement object. Use execute to access it

Package

com.hackinghat.cl-mysql-system.

Source

prepare.lisp.

Function: process-row (mysql-res row num-fields field-names-and-types type-map)
Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: repeat-char (s n)
Package

com.hackinghat.cl-mysql-system.

Source

prepare.lisp.

Function: set-character-set (csname &key database)
Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: single-result-set (conn fn &rest args)

MySQL provides a class of functions that just process a single result set. Note that we won’t explicity free the result set because return-or-close will do the cleanup for us.

Package

com.hackinghat.cl-mysql-system.

Source

mysql.lisp.

Function: thread-alive-p (thread)
Package

com.hackinghat.cl-mysql-system.

Source

thread.lisp.


4.2.5 Generic functions

Generic Function: acquire (connectable &optional keyword)

Calling aquire on a single connection returns itself, on a connection-pool it will return
the first available connection. Note that the pool implementation of this method could block

Package

com.hackinghat.cl-mysql-system.

Source

connection.lisp.

Generic Function: add-connection (self conn)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: add-connection ((self connection-pool) (conn connection))

Add a connection into the pool.

Source

pool.lisp.

Generic Reader: args (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: args ((statement statement))

automatically generated reader method

Source

prepare.lisp.

Target Slot

args.

Generic Writer: (setf args) (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Writer Method: (setf args) ((statement statement))

automatically generated writer method

Source

prepare.lisp.

Target Slot

args.

Generic Function: assign-bound-argument (self index value)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: assign-bound-argument ((self statement) index value)

Take the supplied argument and try to bind it

Source

prepare.lisp.

Generic Function: bound-parameter-p (self index)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: bound-parameter-p ((self statement) index)

Returns T if the argument at index is bound.

Source

prepare.lisp.

Generic Function: bound-unbound-to-string (self)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: bound-unbound-to-string ((self statement))

If the user didn’t bind all the arguments bind those unbound ones now.

Source

prepare.lisp.

Generic Function: can-aquire-lock (self)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: can-aquire-lock ((self connection-pool))
Source

pool.lisp.

Generic Reader: cl-mysql-error-message (condition)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: cl-mysql-error-message ((condition cl-mysql-error))
Source

mysql.lisp.

Target Slot

message.

Generic Function: clean-connections (self array)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: clean-connections ((self connection-pool) array)

Housekeeping to remove null connections from the end of the connections array. Pool should be locked.

Source

pool.lisp.

Generic Function: close-statement (self)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: close-statement ((self statement))

Close a statement and free all the allocated memory.

Source

prepare.lisp.

Generic Function: connect-to-server (self)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: connect-to-server ((self connection-pool))

Create a new single connection and add it to the pool.

Source

pool.lisp.

Generic Function: connect-upto-minimum (self n min)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: connect-upto-minimum ((self connection-pool) n min)

We use this method to allocate up to the minimum number of connections.
It is called once after initialize-instance and will be called again every time a connection is acquired from the pool.

Source

pool.lisp.

Generic Function: consume-unused-results (self)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: consume-unused-results ((self connection))

If a client attempts to release a connection without consuming all the results then we take care of that for them. Because we are probably being called from release don’t also auto-release when we reach the last result!

Source

pool.lisp.

Generic Reader: database (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: database ((statement statement))

automatically generated reader method

Source

prepare.lisp.

Target Slot

database.

Reader Method: database ((connection-pool connection-pool))

automatically generated reader method

Source

pool.lisp.

Target Slot

database.

Generic Function: disconnect-all (self)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: disconnect-all ((self connection-pool))

Disconnects all the connections in the pool from the database.

Source

pool.lisp.

Generic Function: disconnect-from-server (self conn)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: disconnect-from-server ((self connection-pool) (conn connection))

Internal method. Pool should be locked before-hand.

Source

pool.lisp.

Method: disconnect-from-server ((self connection) conn)
Source

pool.lisp.

Generic Function: execute (self &rest args)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: execute ((self statement) &rest args)
Source

prepare.lisp.

Generic Reader: flags (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: flags ((connection-pool connection-pool))

automatically generated reader method

Source

pool.lisp.

Target Slot

flags.

Generic Reader: fully-bound (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: fully-bound ((statement statement))

automatically generated reader method

Source

prepare.lisp.

Target Slot

fully-bound.

Generic Writer: (setf fully-bound) (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Writer Method: (setf fully-bound) ((statement statement))

automatically generated writer method

Source

prepare.lisp.

Target Slot

fully-bound.

Generic Reader: hostname (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: hostname ((connection-pool connection-pool))

automatically generated reader method

Source

pool.lisp.

Target Slot

hostname.

Generic Reader: mysql-error-errno (condition)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: mysql-error-errno ((condition mysql-error))
Source

mysql.lisp.

Target Slot

errno.

Generic Reader: mysql-error-message (condition)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: mysql-error-message ((condition mysql-error))
Source

mysql.lisp.

Target Slot

message.

Generic Reader: nargs (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: nargs ((statement statement))

automatically generated reader method

Source

prepare.lisp.

Target Slot

nargs.

Generic Writer: (setf nargs) (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Writer Method: (setf nargs) ((statement statement))

automatically generated writer method

Source

prepare.lisp.

Target Slot

nargs.

Generic Reader: owner-pool (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: owner-pool ((connection connection))

automatically generated reader method

Source

connection.lisp.

Target Slot

owner-pool.

Generic Function: param-count (self)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: param-count ((self statement))

The number of required parameters that must be bound to this statement.

Source

prepare.lisp.

Generic Reader: password (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: password ((connection-pool connection-pool))

automatically generated reader method

Source

pool.lisp.

Target Slot

password.

Generic Reader: port (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: port ((connection-pool connection-pool))

automatically generated reader method

Source

pool.lisp.

Target Slot

port.

Generic Function: release-binding (self index)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: release-binding ((self statement) index)

Deallocates the memory that we attached to this binding.

Source

prepare.lisp.

Generic Function: remove-connection-from-array (self array conn)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: remove-connection-from-array ((self connection-pool) array conn)

Returns a new array with the given connection object removed (set to NIL) The pool should be locked before this method is called.

Source

pool.lisp.

Generic Function: result-data (self type-map)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: result-data ((self connection) type-map)

Internal function that processes a result set and returns all the data. If field-names-and-types is NIL the raw (string) data is returned

Source

connection.lisp.

Generic Function: return-or-close (self conn)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: return-or-close ((self connection-pool) (conn connection))

Given a pool and a connection, close it if there are more than min-connections or return it to the pool if we have less than or equal to min-connections

Source

pool.lisp.

Generic Function: return-to-available (self &optional conn)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: return-to-available ((self connection-pool) &optional conn)

If the connection is not in the expected state raise an error.

Source

pool.lisp.

Method: return-to-available ((self connection) &optional conn)
Source

pool.lisp.

Generic Function: set-field-names-and-types (self)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: set-field-names-and-types ((self connection))

Retrieve from a MYSQL_RES a list of cons ((<field name> <field type>)*)

Source

connection.lisp.

Generic Reader: socket (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: socket ((connection-pool connection-pool))

automatically generated reader method

Source

pool.lisp.

Target Slot

socket.

Generic Function: sqlstate (self)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: sqlstate ((self statement))

Returns the ANSI / ODBC SQL status

Source

prepare.lisp.

Generic Function: take-first (self)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: take-first ((self connection-pool))

Take the first available connection from the pool. If there are none, NIL is returned.

Source

pool.lisp.

Generic Function: toggle (self)
Package

com.hackinghat.cl-mysql-system.

Methods
Method: toggle ((self connection))
Source

connection.lisp.

Generic Reader: use-query-active (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: use-query-active ((connection connection))

automatically generated reader method

Source

connection.lisp.

Target Slot

use-query-active.

Generic Writer: (setf use-query-active) (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Writer Method: (setf use-query-active) ((connection connection))

automatically generated writer method

Source

connection.lisp.

Target Slot

use-query-active.

Generic Reader: username (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: username ((connection-pool connection-pool))

automatically generated reader method

Source

pool.lisp.

Target Slot

username.

Generic Reader: wait-queue (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: wait-queue ((connection-pool connection-pool))

automatically generated reader method

Source

pool.lisp.

Target Slot

wait-queue.

Generic Writer: (setf wait-queue) (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Writer Method: (setf wait-queue) ((connection-pool connection-pool))

automatically generated writer method

Source

pool.lisp.

Target Slot

wait-queue.

Generic Reader: wait-queue-lock (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Reader Method: wait-queue-lock ((connection-pool connection-pool))

automatically generated reader method

Source

pool.lisp.

Target Slot

wait-queue-lock.

Generic Writer: (setf wait-queue-lock) (object)
Package

com.hackinghat.cl-mysql-system.

Methods
Writer Method: (setf wait-queue-lock) ((connection-pool connection-pool))

automatically generated writer method

Source

pool.lisp.

Target Slot

wait-queue-lock.


4.2.6 Classes

Class: character-set-tclass
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Direct superclasses
  • foreign-struct-type.
  • translatable-foreign-type.
Class: connectable

The base class of connectability. CL-MYSQL functions operate on a
connectable which is then subclassed into a single connection and a connection pool. Note that the connectable itself has no state.

Package

com.hackinghat.cl-mysql-system.

Source

connection.lisp.

Direct subclasses
Class: mysql-bind-tclass
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Direct superclasses
  • foreign-struct-type.
  • translatable-foreign-type.
Class: mysql-field-tclass
Package

com.hackinghat.cl-mysql-system.

Source

system.lisp.

Direct superclasses
  • foreign-struct-type.
  • translatable-foreign-type.

Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   %   (  
A   B   C   D   E   F   G   H   I   L   M   N   O   P   Q   R   S   T   U   W  
Index Entry  Section

%
%set-int-option: Private ordinary functions
%set-string-option: Private ordinary functions

(
(setf args): Private generic functions
(setf args): Private generic functions
(setf available-connections): Public generic functions
(setf available-connections): Public generic functions
(setf bound-map): Public generic functions
(setf bound-map): Public generic functions
(setf connections): Public generic functions
(setf connections): Public generic functions
(setf fully-bound): Private generic functions
(setf fully-bound): Private generic functions
(setf in-use): Public generic functions
(setf in-use): Public generic functions
(setf max-connections): Public generic functions
(setf max-connections): Public generic functions
(setf min-connections): Public generic functions
(setf min-connections): Public generic functions
(setf nargs): Private generic functions
(setf nargs): Private generic functions
(setf pointer): Public generic functions
(setf pointer): Public generic functions
(setf pool-lock): Public generic functions
(setf pool-lock): Public generic functions
(setf result-set): Public generic functions
(setf result-set): Public generic functions
(setf result-set-fields): Public generic functions
(setf result-set-fields): Public generic functions
(setf use-query-active): Private generic functions
(setf use-query-active): Private generic functions
(setf wait-queue): Private generic functions
(setf wait-queue): Private generic functions
(setf wait-queue-lock): Private generic functions
(setf wait-queue-lock): Private generic functions

A
acquire: Private generic functions
add-connection: Private generic functions
add-connection: Private generic functions
aquire: Public generic functions
aquire: Public generic functions
aquire: Public generic functions
aquire: Public generic functions
args: Private generic functions
args: Private generic functions
assign-bound-argument: Private generic functions
assign-bound-argument: Private generic functions
available: Public generic functions
available: Public generic functions
available-connections: Public generic functions
available-connections: Public generic functions

B
bind: Public generic functions
bind: Public generic functions
bind-arg: Public generic functions
bind-arg: Public generic functions
bound-map: Public generic functions
bound-map: Public generic functions
bound-parameter-p: Private generic functions
bound-parameter-p: Private generic functions
bound-unbound-to-string: Private generic functions
bound-unbound-to-string: Private generic functions

C
can-aquire: Public generic functions
can-aquire: Public generic functions
can-aquire-lock: Private generic functions
can-aquire-lock: Private generic functions
cffi-utf8-length: Public ordinary functions
cl-mysql-error-message: Private generic functions
cl-mysql-error-message: Private generic functions
clean-connections: Private generic functions
clean-connections: Private generic functions
client-version: Public ordinary functions
close-statement: Private generic functions
close-statement: Private generic functions
configure-bindings: Public generic functions
configure-bindings: Public generic functions
connect: Public ordinary functions
connect-to-server: Private generic functions
connect-to-server: Private generic functions
connect-upto-minimum: Private generic functions
connect-upto-minimum: Private generic functions
connected: Public generic functions
connected: Public generic functions
connection-equal: Public generic functions
connection-equal: Public generic functions
connection-equal: Public generic functions
connections: Public generic functions
connections: Public generic functions
consume-unused-results: Private generic functions
consume-unused-results: Private generic functions
contains: Public generic functions
contains: Public generic functions
count-connections: Public generic functions
count-connections: Public generic functions

D
database: Private generic functions
database: Private generic functions
database: Private generic functions
decode-version: Private ordinary functions
defmysqlfun: Private macros
disconnect: Public ordinary functions
disconnect-all: Private generic functions
disconnect-all: Private generic functions
disconnect-from-server: Private generic functions
disconnect-from-server: Private generic functions
disconnect-from-server: Private generic functions

E
error-if-non-zero: Private ordinary functions
error-if-null: Private ordinary functions
error-if-null-with-fields: Private ordinary functions
error-if-set: Private ordinary functions
escape-string: Public ordinary functions
execute: Private generic functions
execute: Private generic functions
extract-field: Public ordinary functions

F
flags: Private generic functions
flags: Private generic functions
force-kill: Private ordinary functions
fully-bound: Private generic functions
fully-bound: Private generic functions
Function, %set-int-option: Private ordinary functions
Function, %set-string-option: Private ordinary functions
Function, cffi-utf8-length: Public ordinary functions
Function, client-version: Public ordinary functions
Function, connect: Public ordinary functions
Function, decode-version: Private ordinary functions
Function, disconnect: Public ordinary functions
Function, error-if-non-zero: Private ordinary functions
Function, error-if-null: Private ordinary functions
Function, error-if-null-with-fields: Private ordinary functions
Function, error-if-set: Private ordinary functions
Function, escape-string: Public ordinary functions
Function, extract-field: Public ordinary functions
Function, force-kill: Private ordinary functions
Function, get-character-set-info: Private ordinary functions
Function, get-field: Private ordinary functions
Function, list-dbs: Public ordinary functions
Function, list-fields: Public ordinary functions
Function, list-processes: Public ordinary functions
Function, list-tables: Public ordinary functions
Function, make-lock: Public ordinary functions
Function, make-wait-resource: Private ordinary functions
Function, mysql-affected-rows: Private ordinary functions
Function, mysql-character-set-name: Private ordinary functions
Function, mysql-close: Private ordinary functions
Function, mysql-errno: Private ordinary functions
Function, mysql-error: Public ordinary functions
Function, mysql-escape-string: Private ordinary functions
Function, mysql-fetch-field: Private ordinary functions
Function, mysql-fetch-fields: Private ordinary functions
Function, mysql-fetch-lengths: Private ordinary functions
Function, mysql-fetch-row: Private ordinary functions
Function, mysql-field-count: Private ordinary functions
Function, mysql-free-result: Private ordinary functions
Function, mysql-get-character-set-info: Private ordinary functions
Function, mysql-get-client-version: Private ordinary functions
Function, mysql-get-server-version: Private ordinary functions
Function, mysql-init: Private ordinary functions
Function, mysql-list-dbs: Private ordinary functions
Function, mysql-list-fields: Private ordinary functions
Function, mysql-list-processes: Private ordinary functions
Function, mysql-list-tables: Private ordinary functions
Function, mysql-next-result: Private ordinary functions
Function, mysql-num-fields: Private ordinary functions
Function, mysql-num-rows: Private ordinary functions
Function, mysql-options: Private ordinary functions
Function, mysql-ping: Private ordinary functions
Function, mysql-query: Private ordinary functions
Function, mysql-real-connect: Private ordinary functions
Function, mysql-real-escape-string: Private ordinary functions
Function, mysql-select-db: Private ordinary functions
Function, mysql-set-character-set: Private ordinary functions
Function, mysql-stmt-affected-rows: Private ordinary functions
Function, mysql-stmt-bind-param: Private ordinary functions
Function, mysql-stmt-close: Private ordinary functions
Function, mysql-stmt-errno: Private ordinary functions
Function, mysql-stmt-error: Private ordinary functions
Function, mysql-stmt-execute: Private ordinary functions
Function, mysql-stmt-init: Private ordinary functions
Function, mysql-stmt-param-count: Private ordinary functions
Function, mysql-stmt-prepare: Private ordinary functions
Function, mysql-stmt-sqlstate: Private ordinary functions
Function, mysql-store-result: Private ordinary functions
Function, mysql-use-result: Private ordinary functions
Function, nth-row: Public ordinary functions
Function, option: Public ordinary functions
Function, ping: Public ordinary functions
Function, pool-notify: Private ordinary functions
Function, pool-wait: Private ordinary functions
Function, prepare: Private ordinary functions
Function, process-row: Private ordinary functions
Function, query: Public ordinary functions
Function, repeat-char: Private ordinary functions
Function, server-version: Public ordinary functions
Function, set-character-set: Private ordinary functions
Function, single-result-set: Private ordinary functions
Function, start-thread-in-nsecs: Public ordinary functions
Function, string-to-date: Public ordinary functions
Function, string-to-float: Public ordinary functions
Function, string-to-integer: Public ordinary functions
Function, string-to-ratio: Public ordinary functions
Function, string-to-seconds: Public ordinary functions
Function, string-to-universal-time: Public ordinary functions
Function, thread-alive-p: Private ordinary functions
Function, use: Public ordinary functions
Function, wait-on-threads: Public ordinary functions

G
Generic Function, (setf args): Private generic functions
Generic Function, (setf available-connections): Public generic functions
Generic Function, (setf bound-map): Public generic functions
Generic Function, (setf connections): Public generic functions
Generic Function, (setf fully-bound): Private generic functions
Generic Function, (setf in-use): Public generic functions
Generic Function, (setf max-connections): Public generic functions
Generic Function, (setf min-connections): Public generic functions
Generic Function, (setf nargs): Private generic functions
Generic Function, (setf pointer): Public generic functions
Generic Function, (setf pool-lock): Public generic functions
Generic Function, (setf result-set): Public generic functions
Generic Function, (setf result-set-fields): Public generic functions
Generic Function, (setf use-query-active): Private generic functions
Generic Function, (setf wait-queue): Private generic functions
Generic Function, (setf wait-queue-lock): Private generic functions
Generic Function, acquire: Private generic functions
Generic Function, add-connection: Private generic functions
Generic Function, aquire: Public generic functions
Generic Function, args: Private generic functions
Generic Function, assign-bound-argument: Private generic functions
Generic Function, available: Public generic functions
Generic Function, available-connections: Public generic functions
Generic Function, bind: Public generic functions
Generic Function, bind-arg: Public generic functions
Generic Function, bound-map: Public generic functions
Generic Function, bound-parameter-p: Private generic functions
Generic Function, bound-unbound-to-string: Private generic functions
Generic Function, can-aquire: Public generic functions
Generic Function, can-aquire-lock: Private generic functions
Generic Function, cl-mysql-error-message: Private generic functions
Generic Function, clean-connections: Private generic functions
Generic Function, close-statement: Private generic functions
Generic Function, configure-bindings: Public generic functions
Generic Function, connect-to-server: Private generic functions
Generic Function, connect-upto-minimum: Private generic functions
Generic Function, connected: Public generic functions
Generic Function, connection-equal: Public generic functions
Generic Function, connections: Public generic functions
Generic Function, consume-unused-results: Private generic functions
Generic Function, contains: Public generic functions
Generic Function, count-connections: Public generic functions
Generic Function, database: Private generic functions
Generic Function, disconnect-all: Private generic functions
Generic Function, disconnect-from-server: Private generic functions
Generic Function, execute: Private generic functions
Generic Function, flags: Private generic functions
Generic Function, fully-bound: Private generic functions
Generic Function, hostname: Private generic functions
Generic Function, in-use: Public generic functions
Generic Function, max-connections: Public generic functions
Generic Function, min-connections: Public generic functions
Generic Function, mysql-error-errno: Private generic functions
Generic Function, mysql-error-message: Private generic functions
Generic Function, nargs: Private generic functions
Generic Function, next-index: Public generic functions
Generic Function, next-result-set: Public generic functions
Generic Function, next-row: Public generic functions
Generic Function, owner-pool: Private generic functions
Generic Function, param-count: Private generic functions
Generic Function, password: Private generic functions
Generic Function, pointer: Public generic functions
Generic Function, pool-lock: Public generic functions
Generic Function, port: Private generic functions
Generic Function, process-result-set: Public generic functions
Generic Function, release: Public generic functions
Generic Function, release-binding: Private generic functions
Generic Function, remove-connection-from-array: Private generic functions
Generic Function, result-data: Private generic functions
Generic Function, result-set: Public generic functions
Generic Function, result-set-fields: Public generic functions
Generic Function, return-or-close: Private generic functions
Generic Function, return-to-available: Private generic functions
Generic Function, set-field-names-and-types: Private generic functions
Generic Function, socket: Private generic functions
Generic Function, sqlstate: Private generic functions
Generic Function, take-first: Private generic functions
Generic Function, toggle: Private generic functions
Generic Function, use-query-active: Private generic functions
Generic Function, username: Private generic functions
Generic Function, wait-queue: Private generic functions
Generic Function, wait-queue-lock: Private generic functions
get-character-set-info: Private ordinary functions
get-field: Private ordinary functions

H
hostname: Private generic functions
hostname: Private generic functions

I
in-use: Public generic functions
in-use: Public generic functions
initialize-instance: Public standalone methods

L
list-dbs: Public ordinary functions
list-fields: Public ordinary functions
list-processes: Public ordinary functions
list-tables: Public ordinary functions

M
Macro, defmysqlfun: Private macros
Macro, with-connection: Private macros
Macro, with-lock: Public macros
Macro, with-rows: Public macros
make-lock: Public ordinary functions
make-wait-resource: Private ordinary functions
max-connections: Public generic functions
max-connections: Public generic functions
Method, (setf args): Private generic functions
Method, (setf available-connections): Public generic functions
Method, (setf bound-map): Public generic functions
Method, (setf connections): Public generic functions
Method, (setf fully-bound): Private generic functions
Method, (setf in-use): Public generic functions
Method, (setf max-connections): Public generic functions
Method, (setf min-connections): Public generic functions
Method, (setf nargs): Private generic functions
Method, (setf pointer): Public generic functions
Method, (setf pool-lock): Public generic functions
Method, (setf result-set): Public generic functions
Method, (setf result-set-fields): Public generic functions
Method, (setf use-query-active): Private generic functions
Method, (setf wait-queue): Private generic functions
Method, (setf wait-queue-lock): Private generic functions
Method, add-connection: Private generic functions
Method, aquire: Public generic functions
Method, aquire: Public generic functions
Method, aquire: Public generic functions
Method, args: Private generic functions
Method, assign-bound-argument: Private generic functions
Method, available: Public generic functions
Method, available-connections: Public generic functions
Method, bind: Public generic functions
Method, bind-arg: Public generic functions
Method, bound-map: Public generic functions
Method, bound-parameter-p: Private generic functions
Method, bound-unbound-to-string: Private generic functions
Method, can-aquire: Public generic functions
Method, can-aquire-lock: Private generic functions
Method, cl-mysql-error-message: Private generic functions
Method, clean-connections: Private generic functions
Method, close-statement: Private generic functions
Method, configure-bindings: Public generic functions
Method, connect-to-server: Private generic functions
Method, connect-upto-minimum: Private generic functions
Method, connected: Public generic functions
Method, connection-equal: Public generic functions
Method, connection-equal: Public generic functions
Method, connections: Public generic functions
Method, consume-unused-results: Private generic functions
Method, contains: Public generic functions
Method, count-connections: Public generic functions
Method, database: Private generic functions
Method, database: Private generic functions
Method, disconnect-all: Private generic functions
Method, disconnect-from-server: Private generic functions
Method, disconnect-from-server: Private generic functions
Method, execute: Private generic functions
Method, flags: Private generic functions
Method, fully-bound: Private generic functions
Method, hostname: Private generic functions
Method, in-use: Public generic functions
Method, initialize-instance: Public standalone methods
Method, max-connections: Public generic functions
Method, min-connections: Public generic functions
Method, mysql-error-errno: Private generic functions
Method, mysql-error-message: Private generic functions
Method, nargs: Private generic functions
Method, next-index: Public generic functions
Method, next-result-set: Public generic functions
Method, next-row: Public generic functions
Method, owner-pool: Private generic functions
Method, param-count: Private generic functions
Method, password: Private generic functions
Method, pointer: Public generic functions
Method, pointer: Public generic functions
Method, pool-lock: Public generic functions
Method, port: Private generic functions
Method, process-result-set: Public generic functions
Method, release: Public generic functions
Method, release: Public generic functions
Method, release-binding: Private generic functions
Method, remove-connection-from-array: Private generic functions
Method, result-data: Private generic functions
Method, result-set: Public generic functions
Method, result-set-fields: Public generic functions
Method, return-or-close: Private generic functions
Method, return-to-available: Private generic functions
Method, return-to-available: Private generic functions
Method, set-field-names-and-types: Private generic functions
Method, socket: Private generic functions
Method, sqlstate: Private generic functions
Method, take-first: Private generic functions
Method, toggle: Private generic functions
Method, use-query-active: Private generic functions
Method, username: Private generic functions
Method, wait-queue: Private generic functions
Method, wait-queue-lock: Private generic functions
min-connections: Public generic functions
min-connections: Public generic functions
mysql-affected-rows: Private ordinary functions
mysql-character-set-name: Private ordinary functions
mysql-close: Private ordinary functions
mysql-errno: Private ordinary functions
mysql-error: Public ordinary functions
mysql-error-errno: Private generic functions
mysql-error-errno: Private generic functions
mysql-error-message: Private generic functions
mysql-error-message: Private generic functions
mysql-escape-string: Private ordinary functions
mysql-fetch-field: Private ordinary functions
mysql-fetch-fields: Private ordinary functions
mysql-fetch-lengths: Private ordinary functions
mysql-fetch-row: Private ordinary functions
mysql-field-count: Private ordinary functions
mysql-free-result: Private ordinary functions
mysql-get-character-set-info: Private ordinary functions
mysql-get-client-version: Private ordinary functions
mysql-get-server-version: Private ordinary functions
mysql-init: Private ordinary functions
mysql-list-dbs: Private ordinary functions
mysql-list-fields: Private ordinary functions
mysql-list-processes: Private ordinary functions
mysql-list-tables: Private ordinary functions
mysql-next-result: Private ordinary functions
mysql-num-fields: Private ordinary functions
mysql-num-rows: Private ordinary functions
mysql-options: Private ordinary functions
mysql-ping: Private ordinary functions
mysql-query: Private ordinary functions
mysql-real-connect: Private ordinary functions
mysql-real-escape-string: Private ordinary functions
mysql-select-db: Private ordinary functions
mysql-set-character-set: Private ordinary functions
mysql-stmt-affected-rows: Private ordinary functions
mysql-stmt-bind-param: Private ordinary functions
mysql-stmt-close: Private ordinary functions
mysql-stmt-errno: Private ordinary functions
mysql-stmt-error: Private ordinary functions
mysql-stmt-execute: Private ordinary functions
mysql-stmt-init: Private ordinary functions
mysql-stmt-param-count: Private ordinary functions
mysql-stmt-prepare: Private ordinary functions
mysql-stmt-sqlstate: Private ordinary functions
mysql-store-result: Private ordinary functions
mysql-use-result: Private ordinary functions

N
nargs: Private generic functions
nargs: Private generic functions
next-index: Public generic functions
next-index: Public generic functions
next-result-set: Public generic functions
next-result-set: Public generic functions
next-row: Public generic functions
next-row: Public generic functions
nth-row: Public ordinary functions

O
option: Public ordinary functions
owner-pool: Private generic functions
owner-pool: Private generic functions

P
param-count: Private generic functions
param-count: Private generic functions
password: Private generic functions
password: Private generic functions
ping: Public ordinary functions
pointer: Public generic functions
pointer: Public generic functions
pointer: Public generic functions
pool-lock: Public generic functions
pool-lock: Public generic functions
pool-notify: Private ordinary functions
pool-wait: Private ordinary functions
port: Private generic functions
port: Private generic functions
prepare: Private ordinary functions
process-result-set: Public generic functions
process-result-set: Public generic functions
process-row: Private ordinary functions

Q
query: Public ordinary functions

R
release: Public generic functions
release: Public generic functions
release: Public generic functions
release-binding: Private generic functions
release-binding: Private generic functions
remove-connection-from-array: Private generic functions
remove-connection-from-array: Private generic functions
repeat-char: Private ordinary functions
result-data: Private generic functions
result-data: Private generic functions
result-set: Public generic functions
result-set: Public generic functions
result-set-fields: Public generic functions
result-set-fields: Public generic functions
return-or-close: Private generic functions
return-or-close: Private generic functions
return-to-available: Private generic functions
return-to-available: Private generic functions
return-to-available: Private generic functions

S
server-version: Public ordinary functions
set-character-set: Private ordinary functions
set-field-names-and-types: Private generic functions
set-field-names-and-types: Private generic functions
single-result-set: Private ordinary functions
socket: Private generic functions
socket: Private generic functions
sqlstate: Private generic functions
sqlstate: Private generic functions
start-thread-in-nsecs: Public ordinary functions
string-to-date: Public ordinary functions
string-to-float: Public ordinary functions
string-to-integer: Public ordinary functions
string-to-ratio: Public ordinary functions
string-to-seconds: Public ordinary functions
string-to-universal-time: Public ordinary functions

T
take-first: Private generic functions
take-first: Private generic functions
thread-alive-p: Private ordinary functions
toggle: Private generic functions
toggle: Private generic functions

U
use: Public ordinary functions
use-query-active: Private generic functions
use-query-active: Private generic functions
username: Private generic functions
username: Private generic functions

W
wait-on-threads: Public ordinary functions
wait-queue: Private generic functions
wait-queue: Private generic functions
wait-queue-lock: Private generic functions
wait-queue-lock: Private generic functions
with-connection: Private macros
with-lock: Public macros
with-rows: Public macros


A.3 Variables

Jump to:   *   +  
A   B   C   D   E   F   H   I   M   N   O   P   R   S   U   W  
Index Entry  Section

*
*binary-types*: Private special variables
*debug*: Private special variables
*default-sequence-length*: Private special variables
*generate-alt-fns*: Private special variables
*last-database*: Public special variables
*mysql-dev-api-url*: Private special variables
*sleep-period*: Private constants
*stmt-ctype-map*: Private special variables
*type-map*: Public special variables

+
+cant-read-charset+: Private constants
+client-compress+: Public constants
+client-found-rows+: Public constants
+client-ignore-sigpipe+: Public constants
+client-ignore-space+: Public constants
+client-interactive+: Public constants
+client-local-files+: Public constants
+client-multi-results+: Public constants
+client-multi-statements+: Public constants
+client-no-schema+: Public constants
+client-remember-options+: Public constants
+client-ssl+: Public constants
+commands-out-of-sync+: Private constants
+conn-host-error+: Private constants
+conn-unknow-protocol+: Private constants
+connection-error+: Private constants
+data-truncated+: Private constants
+embedded-connection+: Private constants
+error-first+: Private constants
+fetch-canceled+: Private constants
+field-auto-increment+: Private constants
+field-binary+: Private constants
+field-blob+: Private constants
+field-enum+: Private constants
+field-multiple-key+: Private constants
+field-no-default+: Private constants
+field-not-null+: Private constants
+field-num+: Private constants
+field-primary-key+: Private constants
+field-set+: Private constants
+field-timestamp+: Private constants
+field-unique-key+: Private constants
+field-unsigned+: Private constants
+field-zerofill+: Private constants
+invalid-buffer-use+: Private constants
+invalid-conn-handle+: Private constants
+invalid-parameter-no+: Private constants
+ipsock-error+: Private constants
+localhost-connection+: Private constants
+malformed-packet+: Private constants
+namedpipe-connection+: Private constants
+namedpipeopen-error+: Private constants
+namedpipesetstate-error+: Private constants
+namedpipewait-error+: Private constants
+net-packet-too-large+: Private constants
+no-data+: Private constants
+no-parameters-exists+: Private constants
+no-prepare-stmt+: Private constants
+no-result-set+: Private constants
+no-stmt-metadata+: Private constants
+not-implemented+: Private constants
+null-pointer+: Private constants
+out-of-memory+: Private constants
+params-not-bound+: Private constants
+probe-master-connect+: Private constants
+probe-slave-connect+: Private constants
+probe-slave-hosts+: Private constants
+probe-slave-status+: Private constants
+secure-auth+: Private constants
+server-gone-error+: Private constants
+server-handshake-err+: Private constants
+server-lost+: Private constants
+server-lost-extended+: Private constants
+shared-memory-connect-abandoned-error+: Private constants
+shared-memory-connect-answer-error+: Private constants
+shared-memory-connect-file-map-error+: Private constants
+shared-memory-connect-map-error+: Private constants
+shared-memory-connect-request-error+: Private constants
+shared-memory-connect-set-error+: Private constants
+shared-memory-connection+: Private constants
+shared-memory-event-error+: Private constants
+shared-memory-file-map-error+: Private constants
+shared-memory-map-error+: Private constants
+socket-create-error+: Private constants
+ssl-connection-error+: Private constants
+tcp-connection+: Private constants
+unknown-error+: Private constants
+unknown-host+: Private constants
+unsupported-param-type+: Private constants
+version-error+: Private constants
+wrong-host-info+: Private constants
+wrong-license+: Private constants

A
args: Public classes
available-connections: Public classes

B
bound-map: Public classes

C
connections: Public classes
Constant, *sleep-period*: Private constants
Constant, +cant-read-charset+: Private constants
Constant, +client-compress+: Public constants
Constant, +client-found-rows+: Public constants
Constant, +client-ignore-sigpipe+: Public constants
Constant, +client-ignore-space+: Public constants
Constant, +client-interactive+: Public constants
Constant, +client-local-files+: Public constants
Constant, +client-multi-results+: Public constants
Constant, +client-multi-statements+: Public constants
Constant, +client-no-schema+: Public constants
Constant, +client-remember-options+: Public constants
Constant, +client-ssl+: Public constants
Constant, +commands-out-of-sync+: Private constants
Constant, +conn-host-error+: Private constants
Constant, +conn-unknow-protocol+: Private constants
Constant, +connection-error+: Private constants
Constant, +data-truncated+: Private constants
Constant, +embedded-connection+: Private constants
Constant, +error-first+: Private constants
Constant, +fetch-canceled+: Private constants
Constant, +field-auto-increment+: Private constants
Constant, +field-binary+: Private constants
Constant, +field-blob+: Private constants
Constant, +field-enum+: Private constants
Constant, +field-multiple-key+: Private constants
Constant, +field-no-default+: Private constants
Constant, +field-not-null+: Private constants
Constant, +field-num+: Private constants
Constant, +field-primary-key+: Private constants
Constant, +field-set+: Private constants
Constant, +field-timestamp+: Private constants
Constant, +field-unique-key+: Private constants
Constant, +field-unsigned+: Private constants
Constant, +field-zerofill+: Private constants
Constant, +invalid-buffer-use+: Private constants
Constant, +invalid-conn-handle+: Private constants
Constant, +invalid-parameter-no+: Private constants
Constant, +ipsock-error+: Private constants
Constant, +localhost-connection+: Private constants
Constant, +malformed-packet+: Private constants
Constant, +namedpipe-connection+: Private constants
Constant, +namedpipeopen-error+: Private constants
Constant, +namedpipesetstate-error+: Private constants
Constant, +namedpipewait-error+: Private constants
Constant, +net-packet-too-large+: Private constants
Constant, +no-data+: Private constants
Constant, +no-parameters-exists+: Private constants
Constant, +no-prepare-stmt+: Private constants
Constant, +no-result-set+: Private constants
Constant, +no-stmt-metadata+: Private constants
Constant, +not-implemented+: Private constants
Constant, +null-pointer+: Private constants
Constant, +out-of-memory+: Private constants
Constant, +params-not-bound+: Private constants
Constant, +probe-master-connect+: Private constants
Constant, +probe-slave-connect+: Private constants
Constant, +probe-slave-hosts+: Private constants
Constant, +probe-slave-status+: Private constants
Constant, +secure-auth+: Private constants
Constant, +server-gone-error+: Private constants
Constant, +server-handshake-err+: Private constants
Constant, +server-lost+: Private constants
Constant, +server-lost-extended+: Private constants
Constant, +shared-memory-connect-abandoned-error+: Private constants
Constant, +shared-memory-connect-answer-error+: Private constants
Constant, +shared-memory-connect-file-map-error+: Private constants
Constant, +shared-memory-connect-map-error+: Private constants
Constant, +shared-memory-connect-request-error+: Private constants
Constant, +shared-memory-connect-set-error+: Private constants
Constant, +shared-memory-connection+: Private constants
Constant, +shared-memory-event-error+: Private constants
Constant, +shared-memory-file-map-error+: Private constants
Constant, +shared-memory-map-error+: Private constants
Constant, +socket-create-error+: Private constants
Constant, +ssl-connection-error+: Private constants
Constant, +tcp-connection+: Private constants
Constant, +unknown-error+: Private constants
Constant, +unknown-host+: Private constants
Constant, +unsupported-param-type+: Private constants
Constant, +version-error+: Private constants
Constant, +wrong-host-info+: Private constants
Constant, +wrong-license+: Private constants

D
database: Public classes
database: Public classes

E
errno: Public conditions

F
flags: Public classes
fully-bound: Public classes

H
hostname: Public classes

I
in-use: Public classes

M
max-connections: Public classes
message: Public conditions
message: Public conditions
min-connections: Public classes

N
nargs: Public classes

O
owner-pool: Public classes

P
password: Public classes
pointer: Public classes
pointer: Public classes
pool-lock: Public classes
port: Public classes

R
result-set: Public classes
result-set-fields: Public classes

S
Slot, args: Public classes
Slot, available-connections: Public classes
Slot, bound-map: Public classes
Slot, connections: Public classes
Slot, database: Public classes
Slot, database: Public classes
Slot, errno: Public conditions
Slot, flags: Public classes
Slot, fully-bound: Public classes
Slot, hostname: Public classes
Slot, in-use: Public classes
Slot, max-connections: Public classes
Slot, message: Public conditions
Slot, message: Public conditions
Slot, min-connections: Public classes
Slot, nargs: Public classes
Slot, owner-pool: Public classes
Slot, password: Public classes
Slot, pointer: Public classes
Slot, pointer: Public classes
Slot, pool-lock: Public classes
Slot, port: Public classes
Slot, result-set: Public classes
Slot, result-set-fields: Public classes
Slot, socket: Public classes
Slot, use-query-active: Public classes
Slot, username: Public classes
Slot, wait-queue: Public classes
Slot, wait-queue-lock: Public classes
socket: Public classes
Special Variable, *binary-types*: Private special variables
Special Variable, *debug*: Private special variables
Special Variable, *default-sequence-length*: Private special variables
Special Variable, *generate-alt-fns*: Private special variables
Special Variable, *last-database*: Public special variables
Special Variable, *mysql-dev-api-url*: Private special variables
Special Variable, *stmt-ctype-map*: Private special variables
Special Variable, *type-map*: Public special variables

U
use-query-active: Public classes
username: Public classes

W
wait-queue: Public classes
wait-queue-lock: Public classes


A.4 Data types

Jump to:   C   F   M   P   S   T  
Index Entry  Section

C
character-set-tclass: Private classes
cl-mysql: The cl-mysql system
cl-mysql-error: Public conditions
cl-mysql.asd: The cl-mysql/cl-mysql․asd file
Class, character-set-tclass: Private classes
Class, connectable: Private classes
Class, connection: Public classes
Class, connection-pool: Public classes
Class, mysql-bind-tclass: Private classes
Class, mysql-field-tclass: Private classes
Class, statement: Public classes
com.hackinghat.cl-mysql: The com․hackinghat․cl-mysql package
com.hackinghat.cl-mysql-system: The com․hackinghat․cl-mysql-system package
Condition, cl-mysql-error: Public conditions
Condition, mysql-error: Public conditions
connectable: Private classes
connection: Public classes
connection-pool: Public classes
connection.lisp: The cl-mysql/connection․lisp file

F
File, cl-mysql.asd: The cl-mysql/cl-mysql․asd file
File, connection.lisp: The cl-mysql/connection․lisp file
File, mysql.lisp: The cl-mysql/mysql․lisp file
File, package.lisp: The cl-mysql/package․lisp file
File, pool.lisp: The cl-mysql/pool․lisp file
File, prepare.lisp: The cl-mysql/prepare․lisp file
File, system.lisp: The cl-mysql/system․lisp file
File, thread.lisp: The cl-mysql/thread․lisp file

M
mysql-bind-tclass: Private classes
mysql-error: Public conditions
mysql-field-tclass: Private classes
mysql.lisp: The cl-mysql/mysql․lisp file

P
Package, com.hackinghat.cl-mysql: The com․hackinghat․cl-mysql package
Package, com.hackinghat.cl-mysql-system: The com․hackinghat․cl-mysql-system package
package.lisp: The cl-mysql/package․lisp file
pool.lisp: The cl-mysql/pool․lisp file
prepare.lisp: The cl-mysql/prepare․lisp file

S
statement: Public classes
System, cl-mysql: The cl-mysql system
system.lisp: The cl-mysql/system․lisp file

T
thread.lisp: The cl-mysql/thread․lisp file