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
49 #:database-list-tables
50 #:database-list-attributes
51 #:database-attribute-type
52 #:database-create-sequence
53 #:database-drop-sequence
54 #:database-sequence-next
56 #:database-sequence-last
57 #:database-set-sequence-position
58 #:database-list-attributes
59 #:database-list-sequences
60 #:database-list-indexes
61 #:database-list-table-indexes
65 ;; Large objects (Marc B)
66 #:database-create-large-object
67 #:database-write-large-object
68 #:database-read-large-object
69 #:database-delete-large-object
83 ;; Shared exports for re-export by CLSQL-BASE
89 #:clsql-simple-warning
90 #:clsql-invalid-spec-error
91 #:clsql-invalid-spec-error-connection-spec
92 #:clsql-invalid-spec-error-database-type
93 #:clsql-invalid-spec-error-template
95 #:clsql-access-error-database-type
96 #:clsql-access-error-connection-spec
97 #:clsql-access-error-error
99 #:clsql-connect-error-errno
101 #:clsql-sql-error-database
102 #:clsql-sql-error-expression
103 #:clsql-sql-error-errno
104 #:clsql-sql-error-error
105 #:clsql-database-warning
106 #:clsql-database-warning-database
107 #:clsql-database-warning-message
108 #:clsql-exists-condition
109 #:clsql-exists-condition-new-db
110 #:clsql-exists-condition-old-db
111 #:clsql-exists-warning
114 #:clsql-closed-error-database
115 #:clsql-sql-syntax-error
118 #:clsql-odbc-error-message
120 #:*loaded-database-types*
121 #:reload-database-types
122 #:*default-database-type*
123 #:*initialized-database-types*
124 #:initialize-database-type
125 #:*connect-if-exists*
127 #:connected-databases
131 #:database-name-from-spec
134 ;; accessors for database class
140 #:command-recording-stream
141 #:result-recording-stream
142 #:query-recording-stream
148 #:number-to-sql-string
149 #:float-to-sql-string
175 #:duration-timestring
205 #:time-by-adding-duration
231 ;; recording.lisp -- SQL I/O Recording
233 #:add-sql-stream ; recording xx
234 #:delete-sql-stream ; recording xx
235 #:list-sql-streams ; recording xx
236 #:sql-recording-p ; recording xx
237 #:sql-stream ; recording xx
238 #:start-sql-recording ; recording xx
239 #:stop-sql-recording ; recording xx
241 ;; database.lisp -- Connection
242 #:*default-database-type* ; clsql-base xx
243 #:*default-database* ; classes xx
244 #:connect ; database xx
245 #:*connect-if-exists* ; database xx
246 #:connected-databases ; database xx
247 #:database ; database xx
248 #:database-name ; database xx
249 #:disconnect ; database xx
250 #:reconnect ; database
251 #:find-database ; database xx
252 #:status ; database xx
254 #:with-default-database
266 #:delete-large-object
274 #:rollback-transaction
275 #:add-transaction-commit-hook
276 #:add-transaction-rollback-hook
277 #:commit ; transact xx
278 #:rollback ; transact xx
279 #:with-transaction ; transact xx .
280 #:start-transaction ; transact xx
281 #:in-transaction-p ; transact xx
282 #:database-start-transaction
283 #:database-abort-transaction
284 #:database-commit-transaction
288 ;; Database features specialized by backend
289 #:db-use-column-on-drop-index?
292 (:documentation "This is the INTERNAL SQL-Interface package of CLSQL-BASE."))
294 (defpackage #:clsql-base
295 (:import-from #:clsql-base-sys . #1#)
297 (:documentation "This is the SQL-Interface package of CLSQL-BASE."))