Note: Check the Release Notes for up-to-date information about supported database systems and their keywords.
The generic SQL interface code, including the SQL package itself, and the appropriate libraries, are load-on-demand. The initialization of the chosen database type is achieved by calling sql:initialize-database-type on that database-type. First, generic code for the SQL interface is loaded, then class-specific code and the appropriate database libraries. The library loading is controlled by examination of environment variables, which should be set accordingly.
The following functions and variables are relevant to initialization:
*default-database-type*Variable
sql:init-sql may callsql:initialize-database-type. Variable
initialize-database-type. Function
sql:initialize-database-type &key database-type
to the list of initialized types. Thesql package itself is loaded during the first call to this function. This function is called bysql:init-sql ifsql:*default-database-type* is set. (require "odbc") (in-package "sql") (setf *default-database-type* :odbc) (initialize-database-type)