dfca868d3a09ca86852808a6cf02fbacf71eb957
[clsql.git] / clsql-base / package.cl
1 ;;;; -*- Mode: LISP; Syntax: ANSI-Common-Lisp; Base: 10 -*-
2 ;;;; *************************************************************************
3 ;;;; FILE IDENTIFICATION
4 ;;;;
5 ;;;; Name:          package.cl
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
10 ;;;;
11 ;;;; $Id: package.cl,v 1.1 2002/08/01 03:06:26 kevin Exp $
12 ;;;;
13 ;;;; This file, part of CLSQL, is Copyright (c) 2002 by Kevin M. Rosenberg
14 ;;;; and Copyright (c) 1999-2001 by Pierre R. Mai
15 ;;;;
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 ;;;; *************************************************************************
20
21 (declaim (optimize (debug 3) (speed 3) (safety 1) (compilation-speed 0)))
22 (in-package :cl-user)
23
24 ;;;; This file makes the required package definitions for CLSQL's
25 ;;;; core packages.
26
27 (eval-when (:compile-toplevel :load-toplevel :execute)
28 (defpackage :clsql-base-sys
29   (:use :common-lisp)
30   (:export
31      ;; "Private" exports for use by interface packages
32      #:check-connection-spec
33      #:database-type-load-foreign
34      #:database-type-library-loaded ;; KMR - Tests if foreign library okay
35      #:database-initialize-database-type
36      #:database-connect
37      #:database-disconnect
38      #:database-query
39      #:database-execute-command
40      #:database-query-result-set
41      #:database-dump-result-set
42      #:database-store-next-row
43      
44      ;; For UncommonSQL support
45      #:database-list-tables
46      #:database-list-attributes
47      #:database-attribute-type
48      #:database-create-sequence 
49      #:database-drop-sequence
50      #:database-sequence-next
51      #:sql-escape
52
53      ;; Support for pooled connections
54      #:database-type
55
56      ;; Large objects (Marc B)
57      #:database-create-large-object
58      #:database-write-large-object
59      #:database-read-large-object
60      #:database-delete-large-object
61      
62      ;; Shared exports for re-export by CLSQL-BASE
63      .
64      #1=(#:clsql-condition
65          #:clsql-error
66          #:clsql-simple-error
67          #:clsql-warning
68          #:clsql-simple-warning
69          #:clsql-invalid-spec-error
70          #:clsql-invalid-spec-error-connection-spec
71          #:clsql-invalid-spec-error-database-type
72          #:clsql-invalid-spec-error-template
73          #:clsql-connect-error
74          #:clsql-connect-error-database-type
75          #:clsql-connect-error-connection-spec
76          #:clsql-connect-error-errno
77          #:clsql-connect-error-error
78          #:clsql-sql-error
79          #:clsql-sql-error-database
80          #:clsql-sql-error-expression
81          #:clsql-sql-error-errno
82          #:clsql-sql-error-error
83          #:clsql-database-warning
84          #:clsql-database-warning-database
85          #:clsql-database-warning-message
86          #:clsql-exists-condition
87          #:clsql-exists-condition-new-db
88          #:clsql-exists-condition-old-db
89          #:clsql-exists-warning
90          #:clsql-exists-error
91          #:clsql-closed-error
92          #:clsql-closed-error-database
93          
94          #:*loaded-database-types*
95          #:reload-database-types
96          #:*default-database-type*
97          #:*initialized-database-types*
98          #:initialize-database-type
99          #:*connect-if-exists*
100          #:*default-database*
101          #:connected-databases
102          #:database
103          #:database-name
104          #:closed-database
105          #:find-database
106          #:database-name-from-spec
107
108          ;; accessors for database class
109          #:name
110          #:connection-spec
111          #:transaction
112          #:transaction-level
113          #:conn-pool
114          
115          ;; utils.cl
116          #:number-to-sql-string
117          #:float-to-sql-string
118          #:sql-escape-quotes
119          ))
120     (:documentation "This is the INTERNAL SQL-Interface package of CLSQL-BASE."))
121
122 (defpackage #:clsql-base
123     (:import-from :clsql-base-sys . #1#)
124     (:export . #1#)
125     (:documentation "This is the SQL-Interface package of CLSQL-BASE."))
126 );eval-when
127
128