Common Lisp Package: ODBC-DBI

This is the mid-level interface ODBC.

README:

FUNCTION

Public

DISCONNECT (DATABASE)

This is set in the generic-odbc-database disconnect-fn slot so xref fails but this does get called on generic ODBC connections

Undocumented

CLOSE-QUERY (QUERY)

CONNECT (&KEY DATA-SOURCE-NAME USER PASSWORD CONNECTION-STRING COMPLETION WINDOW-HANDLE (AUTOCOMMIT T))

FETCH-ROW (QUERY &OPTIONAL (EOF-ERRORP T) EOF-VALUE)

LIST-ALL-DATA-SOURCES

LIST-ALL-DATABASE-TABLES (&KEY DB HSTMT)

LIST-ALL-TABLE-COLUMNS (TABLE &KEY DB HSTMT &AUX (TABLE (PRINC-TO-STRING (UNESCAPED-DATABASE-IDENTIFIER TABLE))))

LIST-TABLE-INDEXES (TABLE &KEY DB UNIQUE HSTMT &AUX (TABLE (PRINC-TO-STRING (UNESCAPED-DATABASE-IDENTIFIER TABLE))))

RR-SQL (HSTMT SQL-STATEMENT &KEY DB)

SQL (EXPR &KEY DB RESULT-TYPES ROW-COUNT (COLUMN-NAMES T) QUERY HSTMT WIDTH)

Private

%DB-BIND-EXECUTE (QUERY &REST PARAMETERS)

Only used from db-map-bind-query parameters are released in %reset-query

%DB-RESET-QUERY (QUERY)

Only used from db-map-bind-query parameters are allocated in %db-bind-execute

%DISPOSE-COLUMN-PTRS (QUERY)

frees memory allocated for query object column-data and column-data-length

GET-FREE-QUERY (DATABASE)

get-free-query finds or makes a nonactive query object, and then sets it to active. This makes the functions db-execute-command and db-query thread safe.

Undocumented

DATA-PARAMETER-PTR (HSTMT)

DB-CANCEL-QUERY (QUERY)

DB-CLOSE-QUERY (QUERY &KEY (DROP-P (NOT *REUSE-QUERY-OBJECTS*)))

DB-COMMIT (DATABASE)

DB-DESCRIBE-COLUMNS (DATABASE TABLE-QUALIFIER TABLE-OWNER TABLE-NAME COLUMN-NAME)

DB-MAP-BIND-QUERY (QUERY TYPE FUNCTION &REST PARAMETERS)

DB-QUERY (DATABASE QUERY-EXPRESSION &KEY RESULT-TYPES WIDTH)

DB-ROLLBACK (DATABASE)

SQL-TO-LISP-TYPE (SQL-TYPE)

GENERIC-FUNCTION

Private

Undocumented

%DB-EXECUTE (SRC SQL-EXPRESSION &ALLOW-OTHER-KEYS)

%INITIALIZE-QUERY (SRC ARGLEN COL-POSITIONS &KEY RESULT-TYPES WIDTH)

%READ-QUERY-DATA (SRC IGNORE-COLUMNS)

DB-DATA-SOURCES (DB-TYPE)

DB-EXECUTE-COMMAND (SRC SQL-STRING)

DB-FETCH-QUERY-RESULTS (SRC &OPTIONAL COUNT)

DB-MAP-QUERY (SRC TYPE FUNCTION QUERY-EXP &KEY RESULT-TYPES)

DB-OPEN-QUERY (SRC QUERY-EXPRESSION &KEY ARGLEN COL-POSITIONS RESULT-TYPES WIDTH &ALLOW-OTHER-KEYS)

DB-PREPARE-STATEMENT (SRC SQL &KEY PARAMETER-TABLE PARAMETER-COLUMNS)

GET-ODBC-INFO (SRC INFO-TYPE)

TERMINATE (SRC)

SLOT-ACCESSOR

Public

Undocumented

DB-HSTMT (OBJECT)

SETFDB-HSTMT (NEW-VALUE OBJECT)

DB-WIDTH (OBJECT)

SETFDB-WIDTH (NEW-VALUE OBJECT)

Private

Undocumented

COLUMN-C-TYPES (OBJECT)

SETFCOLUMN-C-TYPES (NEW-VALUE OBJECT)

COLUMN-COUNT (OBJECT)

SETFCOLUMN-COUNT (NEW-VALUE OBJECT)

COLUMN-NAMES (OBJECT)

SETFCOLUMN-NAMES (NEW-VALUE OBJECT)

COLUMN-NULLABLES-P (OBJECT)

SETFCOLUMN-NULLABLES-P (NEW-VALUE OBJECT)

COLUMN-OUT-LEN-PTRS (OBJECT)

SETFCOLUMN-OUT-LEN-PTRS (NEW-VALUE OBJECT)

COLUMN-PRECISIONS (OBJECT)

SETFCOLUMN-PRECISIONS (NEW-VALUE OBJECT)

COLUMN-SCALES (OBJECT)

SETFCOLUMN-SCALES (NEW-VALUE OBJECT)

COLUMN-SQL-TYPES (OBJECT)

SETFCOLUMN-SQL-TYPES (NEW-VALUE OBJECT)

COMPUTED-RESULT-TYPES (OBJECT)

SETFCOMPUTED-RESULT-TYPES (NEW-VALUE OBJECT)

DATA-PTRS (OBJECT)

SETFDATA-PTRS (NEW-VALUE OBJECT)

DB-CONNECTED-P (OBJECT)

SETFDB-CONNECTED-P (NEW-VALUE OBJECT)

DB-COUNT (OBJECT)

SETFDB-COUNT (NEW-VALUE OBJECT)

DB-INFO (OBJECT)

DB-QUERIES (OBJECT)

SETFDB-QUERIES (NEW-VALUE OBJECT)

DB-QUERY-OBJECT (OBJECT)

SETFDB-QUERY-OBJECT (NEW-VALUE OBJECT)

DB-TOTAL-COUNT (OBJECT)

SETFDB-TOTAL-COUNT (NEW-VALUE OBJECT)

DB-TYPE (OBJECT)

HDBC (OBJECT)

SETFHDBC (NEW-VALUE OBJECT)

HENV (OBJECT)

SETFHENV (NEW-VALUE OBJECT)

HSTMT (OBJECT)

SETFHSTMT (NEW-VALUE OBJECT)

PARAMETER-PTRS (OBJECT)

SETFPARAMETER-PTRS (NEW-VALUE OBJECT)

QUERY-ACTIVE-P (OBJECT)

SETFQUERY-ACTIVE-P (NEW-VALUE OBJECT)

QUERY-WIDTH (OBJECT)

SETFQUERY-WIDTH (NEW-VALUE OBJECT)

SQL-EXPRESSION (OBJECT)

SETFSQL-EXPRESSION (NEW-VALUE OBJECT)

VARIABLE

Private

Undocumented

*REUSE-QUERY-OBJECTS*

CLASS

Private

ODBC-QUERY

Stores query information, like SQL query string/expression and database to run the query against.

Undocumented

ODBC-DB