1 ;;;; -*- Mode: LISP; Syntax: ANSI-Common-Lisp; Base: 10 -*-
2 ;;;; *************************************************************************
3 ;;;; FILE IDENTIFICATION
5 ;;;; Name: package.lisp
6 ;;;; Purpose: Package definition for base (low-level) SQL interface
7 ;;;; Programmers: Kevin M. Rosenberg based on
8 ;;;; Original code by Pierre R. Mai
9 ;;;; Date Started: Feb 2002
13 ;;;; This file, part of CLSQL, is Copyright (c) 2002-2004 by Kevin M. Rosenberg
14 ;;;; and Copyright (c) 1999-2001 by Pierre R. Mai
16 ;;;; CLSQL users are granted the rights to distribute and use this software
17 ;;;; as governed by the terms of the Lisp Lesser GNU Public License
18 ;;;; (http://opensource.franz.com/preamble.html), also known as the LLGPL.
19 ;;;; *************************************************************************
21 (in-package #:cl-user)
23 ;;;; This file makes the required package definitions for CLSQL's
26 (eval-when (:compile-toplevel :load-toplevel :execute)
27 (defpackage #:clsql-base-sys
30 ;; "Private" exports for use by interface packages
31 #:check-connection-spec
32 #:database-type-load-foreign
33 #:database-type-library-loaded ;; KMR - Tests if foreign library okay
34 #:database-initialize-database-type
39 #:database-execute-command
40 #:database-query-result-set
41 #:database-dump-result-set
42 #:database-store-next-row
47 #:database-describe-table
48 #:database-underlying-type
50 #:database-list-tables
51 #:database-list-attributes
52 #:database-attribute-type
53 #:database-create-sequence
54 #:database-drop-sequence
55 #:database-sequence-next
57 #:database-sequence-last
58 #:database-set-sequence-position
59 #:database-list-attributes
60 #:database-list-sequences
61 #:database-list-indexes
62 #:database-list-table-indexes
66 ;; Large objects (Marc B)
67 #:database-create-large-object
68 #:database-write-large-object
69 #:database-read-large-object
70 #:database-delete-large-object
84 ;; Shared exports for re-export by CLSQL-BASE
90 #:clsql-simple-warning
91 #:clsql-invalid-spec-error
92 #:clsql-invalid-spec-error-connection-spec
93 #:clsql-invalid-spec-error-database-type
94 #:clsql-invalid-spec-error-template
96 #:clsql-access-error-database-type
97 #:clsql-access-error-connection-spec
98 #:clsql-access-error-error
100 #:clsql-connect-error-errno
102 #:clsql-sql-error-database
103 #:clsql-sql-error-expression
104 #:clsql-sql-error-errno
105 #:clsql-sql-error-error
106 #:clsql-database-warning
107 #:clsql-database-warning-database
108 #:clsql-database-warning-message
109 #:clsql-exists-condition
110 #:clsql-exists-condition-new-db
111 #:clsql-exists-condition-old-db
112 #:clsql-exists-warning
115 #:clsql-closed-error-database
116 #:clsql-sql-syntax-error
119 #:clsql-odbc-error-message
121 #:*loaded-database-types*
122 #:reload-database-types
123 #:*default-database-type*
124 #:*initialized-database-types*
125 #:initialize-database-type
126 #:*connect-if-exists*
128 #:connected-databases
132 #:database-name-from-spec
135 ;; accessors for database class
141 #:command-recording-stream
142 #:result-recording-stream
143 #:query-recording-stream
149 #:number-to-sql-string
150 #:float-to-sql-string
176 #:duration-timestring
206 #:time-by-adding-duration
232 ;; recording.lisp -- SQL I/O Recording
234 #:add-sql-stream ; recording xx
235 #:delete-sql-stream ; recording xx
236 #:list-sql-streams ; recording xx
237 #:sql-recording-p ; recording xx
238 #:sql-stream ; recording xx
239 #:start-sql-recording ; recording xx
240 #:stop-sql-recording ; recording xx
242 ;; database.lisp -- Connection
243 #:*default-database-type* ; clsql-base xx
244 #:*default-database* ; classes xx
245 #:connect ; database xx
246 #:*connect-if-exists* ; database xx
247 #:connected-databases ; database xx
248 #:database ; database xx
249 #:database-name ; database xx
250 #:disconnect ; database xx
251 #:reconnect ; database
252 #:find-database ; database xx
253 #:status ; database xx
255 #:with-default-database
267 #:delete-large-object
275 #:rollback-transaction
276 #:add-transaction-commit-hook
277 #:add-transaction-rollback-hook
278 #:commit ; transact xx
279 #:rollback ; transact xx
280 #:with-transaction ; transact xx .
281 #:start-transaction ; transact xx
282 #:in-transaction-p ; transact xx
283 #:database-start-transaction
284 #:database-abort-transaction
285 #:database-commit-transaction
289 ;; Database features specialized by backend
290 #:db-use-column-on-drop-index?
293 (:documentation "This is the INTERNAL SQL-Interface package of CLSQL-BASE."))
295 (defpackage #:clsql-base
296 (:import-from #:clsql-base-sys . #1#)
298 (:documentation "This is the SQL-Interface package of CLSQL-BASE."))