+++ /dev/null
-\FOT{3}\Node%
-{}\Node%
-{\def\Element%
-{0:0}}\Node%
-{\def\Element%
-{0:1}}\Node%
-{\def\Element%
-{0:2}}\Node%
-{\def\Element%
-{0:3}}\Node%
-{\def\Element%
-{0:4}}CLSQL\endNode{}\endNode{} Users' Guide\endNode{}\Node%
-{\def\Element%
-{0:5}}\Node%
-{\def\Element%
-{0:6}}\Node%
-{\def\Element%
-{0:7}}Kevin\endNode{}\Node%
-{\def\Element%
-{0:8}}M.\endNode{}\Node%
-{\def\Element%
-{0:9}}Rosenberg\endNode{}\Node%
-{\def\Element%
-{0:10}}\Node%
-{\def\Element%
-{0:11}}Maintainer of CLSQL\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:12}}\Node%
-{\def\Element%
-{0:13}}Pierre\endNode{}\Node%
-{\def\Element%
-{0:14}}R.\endNode{}\Node%
-{\def\Element%
-{0:15}}Mai\endNode{}\Node%
-{\def\Element%
-{0:16}}\Node%
-{\def\Element%
-{0:17}}Author of Original MaiSQL Code\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:18}}\Node%
-{\def\Element%
-{0:19}}\$Date: 2002/04/23 21:30:27 $\endNode{}\Node%
-{\def\Element%
-{0:20}}\$Id: docbook.tex,v 1.1 2002/04/23 21:30:27 kevin Exp $\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:21}}\Node%
-{\def\Element%
-{0:22}}\Node%
-{\def\Element%
-{0:23}}\Node%
-{\def\Element%
-{0:24}}\Node%
-{\def\Element%
-{0:25}}\Node%
-{\def\Element%
-{0:26}}CLSQL\endNode{}\endNode{} is Copyright \Entity{copy} 2002 by Kevin M. Rosenberg and
- Copyright \Entity{copy} 1999-\/2001 by Pierre R. Mai.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:27}}\Node%
-{\def\Element%
-{0:28}}\Node%
-{\def\Element%
-{0:29}}Allegro CL\endNode{}\Entity{reg} is a registered
- trademark of Franz Inc.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:30}}\Node%
-{\def\Element%
-{0:31}}\Node%
-{\def\Element%
-{0:32}}Common SQL\endNode{},
- \Node%
-{\def\Element%
-{0:33}}LispWorks\endNode{} and
- \Node%
-{\def\Element%
-{0:34}}Xanalys\endNode{} are trademarks or
- registered trademarks of Xanalys Inc.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:35}}\Node%
-{\def\Element%
-{0:36}}\Node%
-{\def\Element%
-{0:37}}Microsoft
- Windows\endNode{}\Entity{reg} is a registered trademark of
- Microsoft Inc.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:38}}\Node%
-{\def\Element%
-{0:39}}Other brand or
- product names are the registered trademarks or trademarks of
- their respective holders.\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:40}}\Node%
-{\def\Element%
-{0:41}}Preface\endNode{}\Node%
-{\def\Element%
-{0:42}}This guide provides reference
- to the features of \Node%
-{\def\Element%
-{0:43}}\Node%
-{\def\Element%
-{0:44}}CLSQL\endNode{}\endNode{}. The first
- chapter provides an introduction to \Node%
-{\def\Element%
-{0:45}}\Node%
-{\def\Element%
-{0:46}}CLSQL\endNode{}\endNode{} and installation
- instructions.
- Following that chapter is the reference section for all user
- accessible symbols of \Node%
-{\def\Element%
-{0:47}}\Node%
-{\def\Element%
-{0:48}}CLSQL\endNode{}\endNode{} with examples of usage,
- followed by the reference section for all accessible symbols of
- the database back-\/end interface. At the end there you will find
- a glossary of commonly used terms with their
- definitions.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:49}}\Node%
-{\def\Element%
-{0:50}}Introduction\endNode{}\Node%
-{\def\Element%
-{0:51}}\Node%
-{\def\Element%
-{0:52}}Purpose\endNode{}\Node%
-{\def\Element%
-{0:53}}\Node%
-{\def\Element%
-{0:54}}\Node%
-{\def\Element%
-{0:55}}CLSQL\endNode{}\endNode{} is a Common Lisp interface to \Node%
-{\def\Element%
-{0:56}}SQL\endNode{} databases. A number of Common
-Lisp implementations and SQL databases are supported.The general
-structure of \Node%
-{\def\Element%
-{0:57}}\Node%
-{\def\Element%
-{0:58}}CLSQL\endNode{}\endNode{} is based on the
-\Node%
-{\def\Element%
-{0:59}}CommonSQL\endNode{} package by Xanalys.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:60}}\Node%
-{\def\Element%
-{0:61}}History\endNode{}\Node%
-{\def\Element%
-{0:62}} \Node%
-{\def\Element%
-{0:63}}\Node%
-{\def\Element%
-{0:64}}CLSQL\endNode{}\endNode{} is written by Kevin M. Rosenberg and based substantially
-on Pierre R. Mai's excellent \Node%
-{\def\Element%
-{0:65}}\Node%
-{\def\Element%
-{0:66}}MaiSQL\endNode{}\endNode{} package. The main changes from \Node%
-{\def\Element%
-{0:67}}\Node%
-{\def\Element%
-{0:68}}MaiSQL\endNode{}\endNode{}
-are:
-\Node%
-{\def\Element%
-{0:69}}\Node%
-{\def\Element%
-{0:70}}\Node%
-{\def\Element%
-{0:71}}port from the \Node%
-{\def\Element%
-{0:72}}CMUCL\endNode{} FFI to \Node%
-{\def\Element%
-{0:73}}\Node%
-{\def\Element%
-{0:74}}UFFI\endNode{}\endNode{}.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:75}}\Node%
-{\def\Element%
-{0:76}}new \Node%
-{\def\Element%
-{0:77}}AllegroCL\endNode{} ODBC interface back-\/end.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:78}}\Node%
-{\def\Element%
-{0:79}}compatibility layer for \Node%
-{\def\Element%
-{0:80}}CMUCL\endNode{} specific code.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:81}}\Node%
-{\def\Element%
-{0:82}}much improved robustness for the \Node%
-{\def\Element%
-{0:83}}MySQL\endNode{} back-\/end.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:84}}\Node%
-{\def\Element%
-{0:85}}improved system loading.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:86}}\Node%
-{\def\Element%
-{0:87}}improved packages and symbol export.\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:88}}\Node%
-{\def\Element%
-{0:89}}Prerequisites\endNode{}\Node%
-{\def\Element%
-{0:90}}\Node%
-{\def\Element%
-{0:91}}\Node%
-{\def\Element%
-{0:92}}Defsystem\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:93}} \Node%
-{\def\Element%
-{0:94}}\Node%
-{\def\Element%
-{0:95}}CLSQL\endNode{}\endNode{} uses \Node%
-{\def\Element%
-{0:96}}Defsystem\endNode{} to compile and load its
-components. \Node%
-{\def\Element%
-{0:97}}Defsystem\endNode{} is included in the \Node%
-{\def\Element%
-{0:98}}\Node%
-{\def\Element%
-{0:99}}\Node%
-{\def\Element%
-{0:100}}\Node%
-{\def\Element%
-{0:101}}CLOCC\endNode{}\endNode{}\endNode{}\endNode{} collection. The
-version in the pre-\/packaged distribution is rather old and
-may not function well. The version in CVS tree tree works quite
-well. For convenience, a copy of the latest \Node%
-{\def\Element%
-{0:102}}Defsystem\endNode{} at the FTP
-\Node%
-{\def\Element%
-{0:103}}\Node%
-{\def\Element%
-{0:104}}site\endNode{}\endNode{}
-of \Node%
-{\def\Element%
-{0:105}}\Node%
-{\def\Element%
-{0:106}}CLSQL\endNode{}\endNode{}.
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:107}}\Node%
-{\def\Element%
-{0:108}}\Node%
-{\def\Element%
-{0:109}}\Node%
-{\def\Element%
-{0:110}}UFFI\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:111}}\Node%
-{\def\Element%
-{0:112}}\Node%
-{\def\Element%
-{0:113}}CLSQL\endNode{}\endNode{} uses \Node%
-{\def\Element%
-{0:114}}\Node%
-{\def\Element%
-{0:115}}\Node%
-{\def\Element%
-{0:116}}\Node%
-{\def\Element%
-{0:117}}UFFI\endNode{}\endNode{}\endNode{}\endNode{}
-as a \Node%
-{\def\Element%
-{0:118}}Foreign Function Interface\endNode{} (\Node%
-{\def\Element%
-{0:119}}FFI\endNode{}) to support multiple \Node%
-{\def\Element%
-{0:120}}ANSI Common Lisp\endNode{}
-implementations.\endNode{}\Node%
-{\def\Element%
-{0:121}}You can download \Node%
-{\def\Element%
-{0:122}}\Node%
-{\def\Element%
-{0:123}}UFFI\endNode{}\endNode{} from its FTP \Node%
-{\def\Element%
-{0:124}}\Node%
-{\def\Element%
-{0:125}}site\endNode{}\endNode{}. There
-are zip files for Microsoft Windows systems and gzipped tar files for
-other systems.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:126}}\Node%
-{\def\Element%
-{0:127}}Supported Common Lisp Implementation\endNode{}\Node%
-{\def\Element%
-{0:128}}The implementations that support \Node%
-{\def\Element%
-{0:129}}\Node%
-{\def\Element%
-{0:130}}CLSQL\endNode{}\endNode{} is governed by the supported
-implementations of \Node%
-{\def\Element%
-{0:131}}\Node%
-{\def\Element%
-{0:132}}UFFI\endNode{}\endNode{}. The following implementations are supported:
- \endNode{}\Node%
-{\def\Element%
-{0:133}}\Node%
-{\def\Element%
-{0:134}}\Node%
-{\def\Element%
-{0:135}}\Node%
-{\def\Element%
-{0:136}}AllegroCL\endNode{} v6.1 on Redhat Linux 7.2, FreeBSD 4.5, and Microsoft Windows XP.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:137}}\Node%
-{\def\Element%
-{0:138}}\Node%
-{\def\Element%
-{0:139}}Lispworks\endNode{} v4.2 on Redhat Linux 7.2 and Microsoft Windows XP.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:140}}\Node%
-{\def\Element%
-{0:141}}\Node%
-{\def\Element%
-{0:142}}CMUCL\endNode{} 18d-\/pre on Redhat Linux 7.2, FreeBSD 4.5, and Solaris 2.8.\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:143}}\Node%
-{\def\Element%
-{0:144}}Supported \Node%
-{\def\Element%
-{0:145}}SQL\endNode{} Implementation\endNode{}\Node%
-{\def\Element%
-{0:146}} Currently, \Node%
-{\def\Element%
-{0:147}}\Node%
-{\def\Element%
-{0:148}}CLSQL\endNode{}\endNode{} supports the following databases:
- \endNode{}\Node%
-{\def\Element%
-{0:149}}\Node%
-{\def\Element%
-{0:150}}\Node%
-{\def\Element%
-{0:151}}\Node%
-{\def\Element%
-{0:152}}MySQL\endNode{} v3.23.49.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:153}}\Node%
-{\def\Element%
-{0:154}}\Node%
-{\def\Element%
-{0:155}}PostgreSQL\endNode{} v7.2 with both direct API and TCP socket connections.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:156}}\Node%
-{\def\Element%
-{0:157}}Allegro's ODBC interface (\Node%
-{\def\Element%
-{0:158}}AODBC\endNode{}) using iODBC ODBC manager.\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:159}}\Node%
-{\def\Element%
-{0:160}}Installation\endNode{}\Node%
-{\def\Element%
-{0:161}}\Node%
-{\def\Element%
-{0:162}}Ensure \Node%
-{\def\Element%
-{0:163}}Defsystem\endNode{} is loaded\endNode{}\Node%
-{\def\Element%
-{0:164}} Simply load the file \Node%
-{\def\Element%
-{0:165}}defsystem.lisp\endNode{}.
- \Node%
-{\def\Element%
-{0:166}}(load "defsystem.lisp")
- \endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:167}}\Node%
-{\def\Element%
-{0:168}}Build \Node%
-{\def\Element%
-{0:169}}C\endNode{} helper libraries\endNode{}\Node%
-{\def\Element%
-{0:170}}\Node%
-{\def\Element%
-{0:171}}\Node%
-{\def\Element%
-{0:172}}CLSQL\endNode{}\endNode{} uses functions that require 64-\/bit integer
-parameters and return values. The \Node%
-{\def\Element%
-{0:173}}FFI\endNode{} in most \Node%
-{\def\Element%
-{0:174}}\Node%
-{\def\Element%
-{0:175}}CLSQL\endNode{}\endNode{}
-implementations do not support 64-\/bit integers. Thus, C helper
-libraries are required to break these 64-\/bit integers into two compatible
-32-\/bit integers.\endNode{}\Node%
-{\def\Element%
-{0:176}}Makefiles for Microsoft Windows and GNU/Solaris systems
-are supplied to build the libraries. Since many Microsoft Windows
-users don't have access to a compiler, the \Node%
-{\def\Element%
-{0:177}}DLL\endNode{} and \Node%
-{\def\Element%
-{0:178}}LIB\endNode{}
-files for Microsoft Windows are supplied with the distribution.\endNode{}\Node%
-{\def\Element%
-{0:179}}To build the libraries on a GNU or Solaris, use the shell and
-change to the root directory of \Node%
-{\def\Element%
-{0:180}}\Node%
-{\def\Element%
-{0:181}}CLSQL\endNode{}\endNode{}. You may need to edit the file
-\Node%
-{\def\Element%
-{0:182}}interfaces/mysql/Makefile\endNode{} to specify the location of your
-MySQL installation. The default Makefiles are setup for shared library
-linking on Linux. If you are using FreeBSD or Solaris, you will need
-to change the linker setting as instructed in the Makefile.
-Then, you can give the command
-\Node%
-{\def\Element%
-{0:183}}make libs\endNode{}
-in the root directory of \Node%
-{\def\Element%
-{0:184}}\Node%
-{\def\Element%
-{0:185}}CLSQL\endNode{}\endNode{} to build the libraries
-\Node%
-{\def\Element%
-{0:186}}interfaces/mysql/clsql-\/mysql.so\endNode{} and
-\Node%
-{\def\Element%
-{0:187}}interfaces/clsql-\/uffi/clsql-\/uffi.so\endNode{}.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:188}}\Node%
-{\def\Element%
-{0:189}}Load \Node%
-{\def\Element%
-{0:190}}\Node%
-{\def\Element%
-{0:191}}UFFI\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:192}} Unzip or untar the \Node%
-{\def\Element%
-{0:193}}\Node%
-{\def\Element%
-{0:194}}UFFI\endNode{}\endNode{} distribution which creates a directory
-for the \Node%
-{\def\Element%
-{0:195}}\Node%
-{\def\Element%
-{0:196}}UFFI\endNode{}\endNode{} files. Add that directory to Defsystem's \Node%
-{\def\Element%
-{0:197}}mk:*central-\/registry*\endNode{}.
-You can do that by either pushing the pathname of the directory onto this variable, or
-use the new \Node%
-{\def\Element%
-{0:198}}add-\/registry-\/location\endNode{} present in the newest versions of
-\Node%
-{\def\Element%
-{0:199}}Defsystem\endNode{}. The following example code assumes the \Node%
-{\def\Element%
-{0:200}}\Node%
-{\def\Element%
-{0:201}}UFFI\endNode{}\endNode{} files reside in the
-\Node%
-{\def\Element%
-{0:202}}/usr/local/src/lisp/uffi\endNode{} directory.
- \Node%
-{\def\Element%
-{0:203}}(mk:add-\/registry-\/location \#P"/usr/local/src/lisp/uffi")
-(mk:load-\/system :uffi)
- \endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:204}}\Node%
-{\def\Element%
-{0:205}}Load \Node%
-{\def\Element%
-{0:206}}\Node%
-{\def\Element%
-{0:207}}CLSQL\endNode{}\endNode{} modules\endNode{}\Node%
-{\def\Element%
-{0:208}} Unzip or untar the \Node%
-{\def\Element%
-{0:209}}\Node%
-{\def\Element%
-{0:210}}CLSQL\endNode{}\endNode{} distribution which creates a directory
-for the \Node%
-{\def\Element%
-{0:211}}\Node%
-{\def\Element%
-{0:212}}CLSQL\endNode{}\endNode{} files. Add that directory to Defsystem's \Node%
-{\def\Element%
-{0:213}}mk:*central-\/registry*\endNode{}.
-You can do that by either pushing the pathname of the directory onto this variable, or
-use the new \Node%
-{\def\Element%
-{0:214}}add-\/registry-\/location\endNode{} present in the newest versions of
-\Node%
-{\def\Element%
-{0:215}}Defsystem\endNode{}. The following example code assumes the \Node%
-{\def\Element%
-{0:216}}\Node%
-{\def\Element%
-{0:217}}CLSQL\endNode{}\endNode{} files reside in the
-\Node%
-{\def\Element%
-{0:218}}/usr/local/src/lisp/clsql\endNode{} directory. You need to load, at a minimum,
-the main \Node%
-{\def\Element%
-{0:219}}:clsql\endNode{} system and at least one interface system.
- \Node%
-{\def\Element%
-{0:220}}(mk:add-\/registry-\/location \#P"/usr/local/src/lisp/clsql")
-(mk:load-\/system :clsql) ; main clsql package
-(mk:load-\/system :clsql-\/mysql) ; MySQL interface
-(mk:load-\/system :clsql-\/postgresql) ; PostgreSQL interface
-(mk:load-\/system :clsql-\/postgresql-\/socket) ; Socket PGSQL interface
-(mk:load-\/system :clsql-\/aodbc) ; Allegro ODBC interface
- \endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:221}}\Node%
-{\def\Element%
-{0:222}}Run test suite\endNode{}\Node%
-{\def\Element%
-{0:223}} After loading \Node%
-{\def\Element%
-{0:224}}\Node%
-{\def\Element%
-{0:225}}CLSQL\endNode{}\endNode{}, you can execute the test program in
-the directory \Node%
-{\def\Element%
-{0:226}}./test-\/suite\endNode{}. The test file,
-\Node%
-{\def\Element%
-{0:227}}tester-\/clsql\endNode{}
-has instructions for creating a \Node%
-{\def\Element%
-{0:228}}test.config\endNode{}.
-After creating that file, simple load the test file with Lisp
-and the tests should automatically execute.
- \endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:229}}\Node%
-{\def\Element%
-{0:230}}\Node%
-{\def\Element%
-{0:231}}CLSQL\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:232}}\Node%
-{\def\Element%
-{0:233}}This part gives a reference to all the symbols exported
- from the package \Node%
-{\def\Element%
-{0:234}}CLSQL-\/SYS\endNode{}, which are also
- re-\/exported from the package \Node%
-{\def\Element%
-{0:235}}CLSQL\endNode{}. These
- symbols constitute the normal user-\/interface of
- \Node%
-{\def\Element%
-{0:236}}\Node%
-{\def\Element%
-{0:237}}CLSQL\endNode{}\endNode{}.\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:MAISQL-CONDITION}}\Node%
-{\def\Element%
-{0:239}}\Node%
-{\def\Element%
-{0:240}}CLSQL-\/CONDITION\endNode{}\Node%
-{\def\Element%
-{0:241}}the super-\/type of all
- \Node%
-{\def\Element%
-{0:242}}\Node%
-{\def\Element%
-{0:243}}CLSQL\endNode{}\endNode{}-\/specific
- conditions\endNode{}\Node%
-{\def\Element%
-{0:244}}Condition Type\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:245}}\Node%
-{\def\Element%
-{0:246}}Class Precedence List\endNode{}\Node%
-{\def\Element%
-{0:247}} \Node%
-{\def\Element%
-{0:248}}\Node%
-{\def\Element%
-{0:249}}\Node%
-{\def\Element%
-{0:250}}maisql-\/condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:251}}\Node%
-{\def\Element%
-{0:252}}condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:253}}\Node%
-{\def\Element%
-{0:254}}t\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:255}}\Node%
-{\def\Element%
-{0:256}}Description\endNode{}\Node%
-{\def\Element%
-{0:257}}This is the super-\/type of all
- \Node%
-{\def\Element%
-{0:258}}\Node%
-{\def\Element%
-{0:259}}CLSQL\endNode{}\endNode{}-\/specific conditions
- defined by \Node%
-{\def\Element%
-{0:260}}\Node%
-{\def\Element%
-{0:261}}CLSQL\endNode{}\endNode{}, or any of it's
- database-\/specific interfaces. There are no defined
- initialization arguments nor any accessors.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:MAISQL-ERROR}}\Node%
-{\def\Element%
-{0:263}}\Node%
-{\def\Element%
-{0:264}}CLSQL-\/ERROR\endNode{}\Node%
-{\def\Element%
-{0:265}}the super-\/type of all
- \Node%
-{\def\Element%
-{0:266}}\Node%
-{\def\Element%
-{0:267}}CLSQL\endNode{}\endNode{}-\/specific
- errors\endNode{}\Node%
-{\def\Element%
-{0:268}}Condition Type\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:269}}\Node%
-{\def\Element%
-{0:270}}Class Precedence List\endNode{}\Node%
-{\def\Element%
-{0:271}} \Node%
-{\def\Element%
-{0:272}}\Node%
-{\def\Element%
-{0:273}}\Node%
-{\def\Element%
-{0:274}}maisql-\/error\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:275}}\Node%
-{\def\Element%
-{0:276}}error\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:277}}\Node%
-{\def\Element%
-{0:278}}serious-\/condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:279}}\Node%
-{\def\Element%
-{0:280}}maisql-\/condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:281}}\Node%
-{\def\Element%
-{0:282}}condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:283}}\Node%
-{\def\Element%
-{0:284}}t\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:285}}\Node%
-{\def\Element%
-{0:286}}Description\endNode{}\Node%
-{\def\Element%
-{0:287}}This is the super-\/type of all
- \Node%
-{\def\Element%
-{0:288}}\Node%
-{\def\Element%
-{0:289}}CLSQL\endNode{}\endNode{}-\/specific conditions that
- represent errors, as defined by
- \Node%
-{\def\Element%
-{0:290}}\Node%
-{\def\Element%
-{0:291}}CLSQL\endNode{}\endNode{}, or any of it's
- database-\/specific interfaces. There are no defined
- initialization arguments nor any accessors.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:MAISQL-SIMPLE-ERROR}}\Node%
-{\def\Element%
-{0:293}}\Node%
-{\def\Element%
-{0:294}}CLSQL-\/SIMPLE-\/ERROR\endNode{}\Node%
-{\def\Element%
-{0:295}}Unspecific simple
- \Node%
-{\def\Element%
-{0:296}}\Node%
-{\def\Element%
-{0:297}}CLSQL\endNode{}\endNode{} errors\endNode{}\Node%
-{\def\Element%
-{0:298}}Condition Type\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:299}}\Node%
-{\def\Element%
-{0:300}}Class Precedence List\endNode{}\Node%
-{\def\Element%
-{0:301}} \Node%
-{\def\Element%
-{0:302}}\Node%
-{\def\Element%
-{0:303}}\Node%
-{\def\Element%
-{0:304}}maisql-\/simple-\/error\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:305}}\Node%
-{\def\Element%
-{0:306}}simple-\/condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:307}}\Node%
-{\def\Element%
-{0:308}}maisql-\/error\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:309}}\Node%
-{\def\Element%
-{0:310}}error\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:311}}\Node%
-{\def\Element%
-{0:312}}serious-\/condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:313}}\Node%
-{\def\Element%
-{0:314}}maisql-\/condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:315}}\Node%
-{\def\Element%
-{0:316}}condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:317}}\Node%
-{\def\Element%
-{0:318}}t\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:319}}\Node%
-{\def\Element%
-{0:320}}Description\endNode{}\Node%
-{\def\Element%
-{0:321}}This condition is used in all instances of errors, where
- there exists no \Node%
-{\def\Element%
-{0:322}}\Node%
-{\def\Element%
-{0:323}}CLSQL\endNode{}\endNode{}-\/specific
- condition that is more specific. The valid initialization
- arguments and accessors are the same as for
- \Node%
-{\def\Element%
-{0:324}}simple-\/condition\endNode{}.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:MAISQL-WARNING}}\Node%
-{\def\Element%
-{0:326}}\Node%
-{\def\Element%
-{0:327}}CLSQL-\/WARNING\endNode{}\Node%
-{\def\Element%
-{0:328}}the super-\/type of all
- \Node%
-{\def\Element%
-{0:329}}\Node%
-{\def\Element%
-{0:330}}CLSQL\endNode{}\endNode{}-\/specific
- warnings\endNode{}\Node%
-{\def\Element%
-{0:331}}Condition Type\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:332}}\Node%
-{\def\Element%
-{0:333}}Class Precedence List\endNode{}\Node%
-{\def\Element%
-{0:334}} \Node%
-{\def\Element%
-{0:335}}\Node%
-{\def\Element%
-{0:336}}\Node%
-{\def\Element%
-{0:337}}maisql-\/warning\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:338}}\Node%
-{\def\Element%
-{0:339}}warning\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:340}}\Node%
-{\def\Element%
-{0:341}}maisql-\/condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:342}}\Node%
-{\def\Element%
-{0:343}}condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:344}}\Node%
-{\def\Element%
-{0:345}}t\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:346}}\Node%
-{\def\Element%
-{0:347}}Description\endNode{}\Node%
-{\def\Element%
-{0:348}}This is the super-\/type of all
- \Node%
-{\def\Element%
-{0:349}}\Node%
-{\def\Element%
-{0:350}}CLSQL\endNode{}\endNode{}-\/specific conditions that
- represent warnings, as defined by
- \Node%
-{\def\Element%
-{0:351}}\Node%
-{\def\Element%
-{0:352}}CLSQL\endNode{}\endNode{}, or any of it's
- database-\/specific interfaces. There are no defined
- initialization arguments nor any accessors.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:MAISQL-SIMPLE-WARNING}}\Node%
-{\def\Element%
-{0:354}}\Node%
-{\def\Element%
-{0:355}}CLSQL-\/SIMPLE-\/WARNING\endNode{}\Node%
-{\def\Element%
-{0:356}}Unspecific simple
- \Node%
-{\def\Element%
-{0:357}}\Node%
-{\def\Element%
-{0:358}}CLSQL\endNode{}\endNode{} warnings\endNode{}\Node%
-{\def\Element%
-{0:359}}Condition Type\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:360}}\Node%
-{\def\Element%
-{0:361}}Class Precedence List\endNode{}\Node%
-{\def\Element%
-{0:362}} \Node%
-{\def\Element%
-{0:363}}\Node%
-{\def\Element%
-{0:364}}\Node%
-{\def\Element%
-{0:365}}maisql-\/simple-\/warning\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:366}}\Node%
-{\def\Element%
-{0:367}}simple-\/condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:368}}\Node%
-{\def\Element%
-{0:369}}maisql-\/warning\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:370}}\Node%
-{\def\Element%
-{0:371}}warning\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:372}}\Node%
-{\def\Element%
-{0:373}}maisql-\/condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:374}}\Node%
-{\def\Element%
-{0:375}}condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:376}}\Node%
-{\def\Element%
-{0:377}}t\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:378}}\Node%
-{\def\Element%
-{0:379}}Description\endNode{}\Node%
-{\def\Element%
-{0:380}}This condition is used in all instances of warnings,
- where there exists no
- \Node%
-{\def\Element%
-{0:381}}\Node%
-{\def\Element%
-{0:382}}CLSQL\endNode{}\endNode{}-\/specific condition that is
- more specific. The valid initialization arguments and
- accessors are the same as for
- \Node%
-{\def\Element%
-{0:383}}simple-\/condition\endNode{}.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:MAISQL-INVALID-SPEC-ERROR}}\Node%
-{\def\Element%
-{0:385}}\Node%
-{\def\Element%
-{0:386}}CLSQL-\/INVALID-\/SPEC-\/ERROR\endNode{}\Node%
-{\def\Element%
-{0:387}}condition representing errors because of invalid
- connection specifications\endNode{}\Node%
-{\def\Element%
-{0:388}}Condition Type\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:389}}\Node%
-{\def\Element%
-{0:390}}Class Precedence List\endNode{}\Node%
-{\def\Element%
-{0:391}} \Node%
-{\def\Element%
-{0:392}}\Node%
-{\def\Element%
-{0:393}}\Node%
-{\def\Element%
-{0:394}}maisql-\/invalid-\/spec-\/error\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:395}}\Node%
-{\def\Element%
-{0:396}}maisql-\/error\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:397}}\Node%
-{\def\Element%
-{0:398}}error\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:399}}\Node%
-{\def\Element%
-{0:400}}serious-\/condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:401}}\Node%
-{\def\Element%
-{0:402}}maisql-\/condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:403}}\Node%
-{\def\Element%
-{0:404}}condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:405}}\Node%
-{\def\Element%
-{0:406}}t\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:407}}\Node%
-{\def\Element%
-{0:408}}Description\endNode{}\Node%
-{\def\Element%
-{0:409}}This condition represents errors that occur because the
- user supplies an invalid connection specification to either
- \Node%
-{\def\Element%
-{0:410}}database-\/name-\/from-\/spec\endNode{} or
- \Node%
-{\def\Element%
-{0:411}}connect\endNode{}. The following initialization
- arguments and accessors exist:\endNode{}\Node%
-{\def\Element%
-{0:412}}\Node%
-{\def\Element%
-{0:413}}Initarg\endNode{}\Node%
-{\def\Element%
-{0:414}}Accessor\endNode{}\Node%
-{\def\Element%
-{0:415}}Description\endNode{}\Node%
-{\def\Element%
-{0:416}}\Node%
-{\def\Element%
-{0:417}}\Node%
-{\def\Element%
-{0:418}}:connection-\/spec\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:419}}\Node%
-{\def\Element%
-{0:420}}maisql-\/invalid-\/spec-\/error-\/connection-\/spec\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:421}}The invalid connection specification used.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:422}}\Node%
-{\def\Element%
-{0:423}}\Node%
-{\def\Element%
-{0:424}}:database-\/type\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:425}}\Node%
-{\def\Element%
-{0:426}}maisql-\/invalid-\/spec-\/error-\/database-\/type\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:427}}The Database type used in the attempt.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:428}}\Node%
-{\def\Element%
-{0:429}}\Node%
-{\def\Element%
-{0:430}}:template\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:431}}\Node%
-{\def\Element%
-{0:432}}maisql-\/invalid-\/spec-\/error-\/template\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:433}}An argument describing the template that a valid
- connection specification must match for this database type.\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:MAISQL-CONNECT-ERROR}}\Node%
-{\def\Element%
-{0:435}}\Node%
-{\def\Element%
-{0:436}}CLSQL-\/CONNECT-\/ERROR\endNode{}\Node%
-{\def\Element%
-{0:437}}condition representing errors during
- connection\endNode{}\Node%
-{\def\Element%
-{0:438}}Condition Type\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:439}}\Node%
-{\def\Element%
-{0:440}}Class Precedence List\endNode{}\Node%
-{\def\Element%
-{0:441}} \Node%
-{\def\Element%
-{0:442}}\Node%
-{\def\Element%
-{0:443}}\Node%
-{\def\Element%
-{0:444}}maisql-\/connect-\/error\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:445}}\Node%
-{\def\Element%
-{0:446}}maisql-\/error\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:447}}\Node%
-{\def\Element%
-{0:448}}error\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:449}}\Node%
-{\def\Element%
-{0:450}}serious-\/condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:451}}\Node%
-{\def\Element%
-{0:452}}maisql-\/condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:453}}\Node%
-{\def\Element%
-{0:454}}condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:455}}\Node%
-{\def\Element%
-{0:456}}t\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:457}}\Node%
-{\def\Element%
-{0:458}}Description\endNode{}\Node%
-{\def\Element%
-{0:459}}This condition represents errors that occur while trying
- to connect to a database. The following initialization
- arguments and accessors exist:\endNode{}\Node%
-{\def\Element%
-{0:460}}\Node%
-{\def\Element%
-{0:461}}Initarg\endNode{}\Node%
-{\def\Element%
-{0:462}}Accessor\endNode{}\Node%
-{\def\Element%
-{0:463}}Description\endNode{}\Node%
-{\def\Element%
-{0:464}}\Node%
-{\def\Element%
-{0:465}}\Node%
-{\def\Element%
-{0:466}}:database-\/type\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:467}}\Node%
-{\def\Element%
-{0:468}}maisql-\/connect-\/error-\/database-\/type\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:469}}Database type for the connection attempt\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:470}}\Node%
-{\def\Element%
-{0:471}}\Node%
-{\def\Element%
-{0:472}}:connection-\/spec\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:473}}\Node%
-{\def\Element%
-{0:474}}maisql-\/connect-\/error-\/connection-\/spec\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:475}}The connection specification used in the
- connection attempt.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:476}}\Node%
-{\def\Element%
-{0:477}}\Node%
-{\def\Element%
-{0:478}}:errno\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:479}}\Node%
-{\def\Element%
-{0:480}}maisql-\/connect-\/error-\/errno\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:481}}The numeric or symbolic error specification
- returned by the database back-\/end. The values and
- semantics of this are interface specific.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:482}}\Node%
-{\def\Element%
-{0:483}}\Node%
-{\def\Element%
-{0:484}}:error\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:485}}\Node%
-{\def\Element%
-{0:486}}maisql-\/connect-\/error-\/error\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:487}}A string describing the problem that occurred,
- possibly one returned by the database back-\/end.\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:MAISQL-SQL-ERROR}}\Node%
-{\def\Element%
-{0:489}}\Node%
-{\def\Element%
-{0:490}}CLSQL-\/SQL-\/ERROR\endNode{}\Node%
-{\def\Element%
-{0:491}}condition representing errors during query or
- command execution\endNode{}\Node%
-{\def\Element%
-{0:492}}Condition Type\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:493}}\Node%
-{\def\Element%
-{0:494}}Class Precedence List\endNode{}\Node%
-{\def\Element%
-{0:495}} \Node%
-{\def\Element%
-{0:496}}\Node%
-{\def\Element%
-{0:497}}\Node%
-{\def\Element%
-{0:498}}maisql-\/sql-\/error\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:499}}\Node%
-{\def\Element%
-{0:500}}maisql-\/error\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:501}}\Node%
-{\def\Element%
-{0:502}}error\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:503}}\Node%
-{\def\Element%
-{0:504}}serious-\/condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:505}}\Node%
-{\def\Element%
-{0:506}}maisql-\/condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:507}}\Node%
-{\def\Element%
-{0:508}}condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:509}}\Node%
-{\def\Element%
-{0:510}}t\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:511}}\Node%
-{\def\Element%
-{0:512}}Description\endNode{}\Node%
-{\def\Element%
-{0:513}}This condition represents errors that occur while
- executing SQL statements, either as part of query operations
- or command execution, either explicitly or implicitly, as
- caused e.g. by \Node%
-{\def\Element%
-{0:514}}with-\/transaction\endNode{}.
- The following initialization arguments and accessors exist:\endNode{}\Node%
-{\def\Element%
-{0:515}}\Node%
-{\def\Element%
-{0:516}}Initarg\endNode{}\Node%
-{\def\Element%
-{0:517}}Accessor\endNode{}\Node%
-{\def\Element%
-{0:518}}Description\endNode{}\Node%
-{\def\Element%
-{0:519}}\Node%
-{\def\Element%
-{0:520}}\Node%
-{\def\Element%
-{0:521}}:database\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:522}}\Node%
-{\def\Element%
-{0:523}}maisql-\/sql-\/error-\/database\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:524}}The database object that was involved in the
- incident.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:525}}\Node%
-{\def\Element%
-{0:526}}\Node%
-{\def\Element%
-{0:527}}:expression\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:528}}\Node%
-{\def\Element%
-{0:529}}maisql-\/sql-\/error-\/expression\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:530}}The SQL expression whose execution caused the error.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:531}}\Node%
-{\def\Element%
-{0:532}}\Node%
-{\def\Element%
-{0:533}}:errno\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:534}}\Node%
-{\def\Element%
-{0:535}}maisql-\/sql-\/error-\/errno\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:536}}The numeric or symbolic error specification
- returned by the database back-\/end. The values and
- semantics of this are interface specific.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:537}}\Node%
-{\def\Element%
-{0:538}}\Node%
-{\def\Element%
-{0:539}}:error\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:540}}\Node%
-{\def\Element%
-{0:541}}maisql-\/sql-\/error-\/error\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:542}}A string describing the problem that occurred,
- possibly one returned by the database back-\/end.\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:MAISQL-EXISTS-CONDITION}}\Node%
-{\def\Element%
-{0:544}}\Node%
-{\def\Element%
-{0:545}}CLSQL-\/EXISTS-\/CONDITION\endNode{}\Node%
-{\def\Element%
-{0:546}}condition indicating situations arising because of
- existing connections\endNode{}\Node%
-{\def\Element%
-{0:547}}Condition Type\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:548}}\Node%
-{\def\Element%
-{0:549}}Class Precedence List\endNode{}\Node%
-{\def\Element%
-{0:550}} \Node%
-{\def\Element%
-{0:551}}\Node%
-{\def\Element%
-{0:552}}\Node%
-{\def\Element%
-{0:553}}maisql-\/exists-\/condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:554}}\Node%
-{\def\Element%
-{0:555}}maisql-\/condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:556}}\Node%
-{\def\Element%
-{0:557}}condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:558}}\Node%
-{\def\Element%
-{0:559}}t\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:560}}\Node%
-{\def\Element%
-{0:561}}Description\endNode{}\Node%
-{\def\Element%
-{0:562}}This condition is the super-\/type of all conditions which
- represents problems that occur during calls to
- \Node%
-{\def\Element%
-{0:563}}connect\endNode{}, if a connection to the
- database exists already. Depending on the value of
- \Node%
-{\def\Element%
-{0:564}}if-\/exists\endNode{} to the call of
- \Node%
-{\def\Element%
-{0:565}}connect\endNode{}, either a warning, an error or
- no condition at all is signalled. If a warning or error is
- signalled, either
- \Node%
-{\def\Element%
-{0:566}}maisql-\/exists-\/warning\endNode{} or
- \Node%
-{\def\Element%
-{0:567}}maisql-\/exists-\/error\endNode{} is signalled,
- which are subtypes of
- \Node%
-{\def\Element%
-{0:568}}maisql-\/exists-\/condition\endNode{} and
- \Node%
-{\def\Element%
-{0:569}}maisql-\/warning\endNode{} or
- \Node%
-{\def\Element%
-{0:570}}maisql-\/error\endNode{}.
- \Node%
-{\def\Element%
-{0:571}}maisql-\/exists-\/condition\endNode{} is never
- signalled itself.\endNode{}\Node%
-{\def\Element%
-{0:572}} The following initialization arguments and accessors exist:\endNode{}\Node%
-{\def\Element%
-{0:573}}\Node%
-{\def\Element%
-{0:574}}Initarg\endNode{}\Node%
-{\def\Element%
-{0:575}}Accessor\endNode{}\Node%
-{\def\Element%
-{0:576}}Description\endNode{}\Node%
-{\def\Element%
-{0:577}}\Node%
-{\def\Element%
-{0:578}}\Node%
-{\def\Element%
-{0:579}}:old-\/db\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:580}}\Node%
-{\def\Element%
-{0:581}}maisql-\/exists-\/condition-\/old-\/db\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:582}}The database object that represents the existing
- connection. This slot is always filled.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:583}}\Node%
-{\def\Element%
-{0:584}}\Node%
-{\def\Element%
-{0:585}}:new-\/db\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:586}}\Node%
-{\def\Element%
-{0:587}}maisql-\/exists-\/condition-\/new-\/db\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:588}}The database object that will be used and returned by
- this call to connect, if execution continues normally.
- This can be either \Node%
-{\def\Element%
-{0:589}}nil\endNode{}, indicating that
- a new database object is to be created on continuation,
- or a database object representing the newly created
- continuation, or the same database object as
- \Node%
-{\def\Element%
-{0:590}}old-\/db\endNode{}, indicating that the existing
- database object will be reused. This slot is always
- filled and defaults to \Node%
-{\def\Element%
-{0:591}}nil\endNode{}.\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:MAISQL-EXISTS-WARNING}}\Node%
-{\def\Element%
-{0:593}}\Node%
-{\def\Element%
-{0:594}}CLSQL-\/EXISTS-\/WARNING\endNode{}\Node%
-{\def\Element%
-{0:595}}condition representing warnings arising because of
- existing connections\endNode{}\Node%
-{\def\Element%
-{0:596}}Condition Type\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:597}}\Node%
-{\def\Element%
-{0:598}}Class Precedence List\endNode{}\Node%
-{\def\Element%
-{0:599}} \Node%
-{\def\Element%
-{0:600}}\Node%
-{\def\Element%
-{0:601}}\Node%
-{\def\Element%
-{0:602}}maisql-\/exists-\/warning\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:603}}\Node%
-{\def\Element%
-{0:604}}maisql-\/exists-\/condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:605}}\Node%
-{\def\Element%
-{0:606}}maisql-\/warning\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:607}}\Node%
-{\def\Element%
-{0:608}}warning\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:609}}\Node%
-{\def\Element%
-{0:610}}maisql-\/condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:611}}\Node%
-{\def\Element%
-{0:612}}condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:613}}\Node%
-{\def\Element%
-{0:614}}t\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:615}}\Node%
-{\def\Element%
-{0:616}}Description\endNode{}\Node%
-{\def\Element%
-{0:617}}This condition is a subtype of
- \Node%
-{\def\Element%
-{0:618}}maisql-\/exists-\/condition\endNode{}, and is
- signalled during calls to \Node%
-{\def\Element%
-{0:619}}connect\endNode{} when
- there is an existing connection, and
- \Node%
-{\def\Element%
-{0:620}}if-\/exists\endNode{} is either
- \Node%
-{\def\Element%
-{0:621}}:warn-\/new\endNode{} or \Node%
-{\def\Element%
-{0:622}}:warn-\/old\endNode{}.
- In the former case, \Node%
-{\def\Element%
-{0:623}}new-\/db\endNode{} will be the
- newly created database object, in the latter case it will be
- the existing old database object.\endNode{}\Node%
-{\def\Element%
-{0:624}} The initialization arguments and accessors are the same as
- for \Node%
-{\def\Element%
-{0:625}}maisql-\/exists-\/condition\endNode{}.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:MAISQL-EXISTS-ERROR}}\Node%
-{\def\Element%
-{0:627}}\Node%
-{\def\Element%
-{0:628}}CLSQL-\/EXISTS-\/ERROR\endNode{}\Node%
-{\def\Element%
-{0:629}}condition representing errors arising because of
- existing connections\endNode{}\Node%
-{\def\Element%
-{0:630}}Condition Type\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:631}}\Node%
-{\def\Element%
-{0:632}}Class Precedence List\endNode{}\Node%
-{\def\Element%
-{0:633}} \Node%
-{\def\Element%
-{0:634}}\Node%
-{\def\Element%
-{0:635}}\Node%
-{\def\Element%
-{0:636}}maisql-\/exists-\/error\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:637}}\Node%
-{\def\Element%
-{0:638}}maisql-\/exists-\/condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:639}}\Node%
-{\def\Element%
-{0:640}}maisql-\/error\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:641}}\Node%
-{\def\Element%
-{0:642}}error\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:643}}\Node%
-{\def\Element%
-{0:644}}serious-\/condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:645}}\Node%
-{\def\Element%
-{0:646}}maisql-\/condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:647}}\Node%
-{\def\Element%
-{0:648}}condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:649}}\Node%
-{\def\Element%
-{0:650}}t\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:651}}\Node%
-{\def\Element%
-{0:652}}Description\endNode{}\Node%
-{\def\Element%
-{0:653}}This condition is a subtype of
- \Node%
-{\def\Element%
-{0:654}}maisql-\/exists-\/condition\endNode{}, and is
- signalled during calls to \Node%
-{\def\Element%
-{0:655}}connect\endNode{} when
- there is an existing connection, and
- \Node%
-{\def\Element%
-{0:656}}if-\/exists\endNode{} is \Node%
-{\def\Element%
-{0:657}}:error\endNode{}.
- In this case, \Node%
-{\def\Element%
-{0:658}}new-\/db\endNode{} will be
- \Node%
-{\def\Element%
-{0:659}}nil\endNode{}, indicating that the database object to
- be returned by \Node%
-{\def\Element%
-{0:660}}connect\endNode{} depends on user
- action in continuing from this correctable error.\endNode{}\Node%
-{\def\Element%
-{0:661}} The initialization arguments and accessors are the same as
- for \Node%
-{\def\Element%
-{0:662}}maisql-\/exists-\/condition\endNode{}.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:MAISQL-CLOSED-ERROR}}\Node%
-{\def\Element%
-{0:664}}\Node%
-{\def\Element%
-{0:665}}CLSQL-\/CLOSED-\/ERROR\endNode{}\Node%
-{\def\Element%
-{0:666}}condition representing errors because the database
- has already been closed\endNode{}\Node%
-{\def\Element%
-{0:667}}Condition Type\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:668}}\Node%
-{\def\Element%
-{0:669}}Class Precedence List\endNode{}\Node%
-{\def\Element%
-{0:670}} \Node%
-{\def\Element%
-{0:671}}\Node%
-{\def\Element%
-{0:672}}\Node%
-{\def\Element%
-{0:673}}maisql-\/closed-\/error\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:674}}\Node%
-{\def\Element%
-{0:675}}maisql-\/error\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:676}}\Node%
-{\def\Element%
-{0:677}}error\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:678}}\Node%
-{\def\Element%
-{0:679}}serious-\/condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:680}}\Node%
-{\def\Element%
-{0:681}}maisql-\/condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:682}}\Node%
-{\def\Element%
-{0:683}}condition\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:684}}\Node%
-{\def\Element%
-{0:685}}t\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:686}}\Node%
-{\def\Element%
-{0:687}}Description\endNode{}\Node%
-{\def\Element%
-{0:688}}This condition represents errors that occur because the
- user invokes an operation on the given database object,
- although the database is invalid because
- \Node%
-{\def\Element%
-{0:689}}disconnect\endNode{} has already been called on
- this database object.\endNode{}\Node%
-{\def\Element%
-{0:690}}Functions which signal this error when called with a
- closed database will usually provide a
- \Node%
-{\def\Element%
-{0:691}}continue\endNode{} restart, that will just return nil
- from the function.\endNode{}\Node%
-{\def\Element%
-{0:692}} The following initialization arguments and accessors exist:\endNode{}\Node%
-{\def\Element%
-{0:693}}\Node%
-{\def\Element%
-{0:694}}Initarg\endNode{}\Node%
-{\def\Element%
-{0:695}}Accessor\endNode{}\Node%
-{\def\Element%
-{0:696}}Description\endNode{}\Node%
-{\def\Element%
-{0:697}}\Node%
-{\def\Element%
-{0:698}}\Node%
-{\def\Element%
-{0:699}}:database\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:700}}\Node%
-{\def\Element%
-{0:701}}maisql-\/closed-\/error-\/database\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:702}}The database object that was involved in the
- incident.\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:DEFAULT-DATABASE-TYPE}}\Node%
-{\def\Element%
-{0:704}}\Node%
-{\def\Element%
-{0:705}}*DEFAULT-\/DATABASE-\/TYPE*\endNode{}\Node%
-{\def\Element%
-{0:706}}The default database type to use\endNode{}\Node%
-{\def\Element%
-{0:707}}Variable\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:708}}\Node%
-{\def\Element%
-{0:709}}Value Type\endNode{}\Node%
-{\def\Element%
-{0:710}}Any keyword representing a valid database back-\/end of
- \Node%
-{\def\Element%
-{0:711}}\Node%
-{\def\Element%
-{0:712}}CLSQL\endNode{}\endNode{}, or
- \Node%
-{\def\Element%
-{0:713}}nil\endNode{}.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:714}}\Node%
-{\def\Element%
-{0:715}}Initial Value\endNode{}\Node%
-{\def\Element%
-{0:716}}\Node%
-{\def\Element%
-{0:717}}nil\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:718}}\Node%
-{\def\Element%
-{0:719}}Description\endNode{}\Node%
-{\def\Element%
-{0:720}}The value of this variable is used in calls to
- \Node%
-{\def\Element%
-{0:721}}initialize-\/database-\/type\endNode{} and
- \Node%
-{\def\Element%
-{0:722}}connect\endNode{} as the default
- value of the \Node%
-{\def\Element%
-{0:723}}database-\/type\endNode{}
- parameter.\endNode{}\Node%
-{\def\Element%
-{0:724}}\Node%
-{\def\Element%
-{0:725}}If the value of this variable is \Node%
-{\def\Element%
-{0:726}}nil\endNode{},
- then all calls to
- \Node%
-{\def\Element%
-{0:727}}initialize-\/database-\/type\endNode{} or
- \Node%
-{\def\Element%
-{0:728}}connect\endNode{} will have to specify the
- \Node%
-{\def\Element%
-{0:729}}database-\/type\endNode{} to use, or a
- general-\/purpose error will be signalled.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:730}}\Node%
-{\def\Element%
-{0:731}}Examples\endNode{}\Node%
-{\def\Element%
-{0:732}}(setf *default-\/database-\/type* :mysql)
-=>\/ :mysql
-(initialize-\/database-\/type)
-=>\/ t
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:733}}\Node%
-{\def\Element%
-{0:734}}Affected By\endNode{}\Node%
-{\def\Element%
-{0:735}}None.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:736}}\Node%
-{\def\Element%
-{0:737}}See Also\endNode{}\Node%
-{\def\Element%
-{0:738}}None.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:739}}\Node%
-{\def\Element%
-{0:740}}Notes\endNode{}\Node%
-{\def\Element%
-{0:741}}None.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:INITIALIZED-DATABASE-TYPES}}\Node%
-{\def\Element%
-{0:743}}\Node%
-{\def\Element%
-{0:744}}*INITIALIZED-\/DATABASE-\/TYPES*\endNode{}\Node%
-{\def\Element%
-{0:745}}List of all initialized database types\endNode{}\Node%
-{\def\Element%
-{0:746}}Variable\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:747}}\Node%
-{\def\Element%
-{0:748}}Value Type\endNode{}\Node%
-{\def\Element%
-{0:749}}A list of all initialized database types, each of which
- represented by it's corresponding keyword.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:750}}\Node%
-{\def\Element%
-{0:751}}Initial Value\endNode{}\Node%
-{\def\Element%
-{0:752}}\Node%
-{\def\Element%
-{0:753}}nil\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:754}}\Node%
-{\def\Element%
-{0:755}}Description\endNode{}\Node%
-{\def\Element%
-{0:756}}This variable is updated whenever
- \Node%
-{\def\Element%
-{0:757}}initialize-\/database-\/type\endNode{} is called for a
- database type which hasn't already been initialized before,
- as determined by this variable. In that case the keyword
- representing the database type is pushed onto the list
- stored in
- \Node%
-{\def\Element%
-{0:758}}*INITIALIZED-\/DATABASE-\/TYPES*\endNode{}.\endNode{}\Node%
-{\def\Element%
-{0:759}}\Node%
-{\def\Element%
-{0:760}}Attempts to modify the value of this variable will
- result in undefined behaviour.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:761}}\Node%
-{\def\Element%
-{0:762}}Examples\endNode{}\Node%
-{\def\Element%
-{0:763}}(setf *default-\/database-\/type* :mysql)
-=>\/ :mysql
-(initialize-\/database-\/type)
-=>\/ t
-*initialized-\/database-\/types*
-=>\/ (:MYSQL)
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:764}}\Node%
-{\def\Element%
-{0:765}}Affected By\endNode{}\Node%
-{\def\Element%
-{0:766}} \Node%
-{\def\Element%
-{0:767}}\Node%
-{\def\Element%
-{0:768}}\Node%
-{\def\Element%
-{0:769}}initialize-\/database-\/type\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:770}}\Node%
-{\def\Element%
-{0:771}}See Also\endNode{}\Node%
-{\def\Element%
-{0:772}}None.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:773}}\Node%
-{\def\Element%
-{0:774}}Notes\endNode{}\Node%
-{\def\Element%
-{0:775}}Direct access to this variable is primarily provided
- because of compatibility with Harlequin's \Node%
-{\def\Element%
-{0:776}}Common
- SQL\endNode{}.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:INITIALIZE-DATABASE-TYPE}}\Node%
-{\def\Element%
-{0:778}}\Node%
-{\def\Element%
-{0:779}}INITIALIZE-\/DATABASE-\/TYPE\endNode{}\Node%
-{\def\Element%
-{0:780}}Initializes a database type\endNode{}\Node%
-{\def\Element%
-{0:781}}Function\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:782}}\Node%
-{\def\Element%
-{0:783}}Syntax\endNode{}\Node%
-{\def\Element%
-{0:784}}\Node%
-{\def\Element%
-{0:785}}initialize-\/database-\/type\endNode{} \Entity{amp}key \Node%
-{\def\Element%
-{0:786}}database-\/type\endNode{} =>\/ \Node%
-{\def\Element%
-{0:787}}result\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:788}}\Node%
-{\def\Element%
-{0:789}}Arguments and Values\endNode{}\Node%
-{\def\Element%
-{0:790}}\Node%
-{\def\Element%
-{0:791}}\Node%
-{\def\Element%
-{0:792}}\Node%
-{\def\Element%
-{0:793}}database-\/type\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:794}}\Node%
-{\def\Element%
-{0:795}}The database type to initialize, i.e. a keyword
- symbol denoting a known database back-\/end. Defaults to
- the value of
- \Node%
-{\def\Element%
-{0:796}}*default-\/database-\/type*\endNode{}.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:797}}\Node%
-{\def\Element%
-{0:798}}\Node%
-{\def\Element%
-{0:799}}result\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:800}}\Node%
-{\def\Element%
-{0:801}}Either \Node%
-{\def\Element%
-{0:802}}nil\endNode{} if the initialization
- attempt fails, or \Node%
-{\def\Element%
-{0:803}}t\endNode{} otherwise.\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:804}}\Node%
-{\def\Element%
-{0:805}}Description\endNode{}\Node%
-{\def\Element%
-{0:806}}If the back-\/end specified by
- \Node%
-{\def\Element%
-{0:807}}database-\/type\endNode{} has not already been
- initialized, as seen from
- \Node%
-{\def\Element%
-{0:808}}*initialized-\/database-\/types*\endNode{}, an attempt is
- made to initialize the database. If this attempt succeeds,
- or the back-\/end has already been initialized, the function
- returns t, and places the keyword denoting the database type
- onto the list stored in
- \Node%
-{\def\Element%
-{0:809}}*initialized-\/database-\/types*\endNode{}, if not
- already present.\endNode{}\Node%
-{\def\Element%
-{0:810}}If initialization fails, the function returns
- \Node%
-{\def\Element%
-{0:811}}nil\endNode{}, and/or signals an error of type
- \Node%
-{\def\Element%
-{0:812}}maisql-\/error\endNode{}. The kind of action
- taken depends on the back-\/end and the cause of the
- problem.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:813}}\Node%
-{\def\Element%
-{0:814}}Examples\endNode{}\Node%
-{\def\Element%
-{0:815}}*initialized-\/database-\/types*
-=>\/ NIL
-(setf *default-\/database-\/type* :mysql)
-=>\/ :MYSQL
-(initialize-\/database-\/type)
->\/>\/ Compiling LAMBDA (\#:G897 \#:G898 \#:G901 \#:G902):
->\/>\/ Compiling Top-\/Level Form:
->\/>\/
-=>\/ T
-*initialized-\/database-\/types*
-=>\/ (:MYSQL)
-(initialize-\/database-\/type)
-=>\/ T
-*initialized-\/database-\/types*
-=>\/ (:MYSQL)
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:816}}\Node%
-{\def\Element%
-{0:817}}Side Effects\endNode{}\Node%
-{\def\Element%
-{0:818}}The database back-\/end corresponding to the database type
- specified is initialized, unless it has already been
- initialized. This can involve any number of other side
- effects, as determined by the back-\/end implementation (like
- e.g. loading of foreign code, calling of foreign code,
- networking operations, etc.). If initialization is
- attempted and succeeds, the
- \Node%
-{\def\Element%
-{0:819}}database-\/type\endNode{} is pushed onto the list
- stored in
- \Node%
-{\def\Element%
-{0:820}}*initialized-\/database-\/types*\endNode{}.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:821}}\Node%
-{\def\Element%
-{0:822}}Affected by\endNode{}\Node%
-{\def\Element%
-{0:823}} \Node%
-{\def\Element%
-{0:824}}\Node%
-{\def\Element%
-{0:825}}\Node%
-{\def\Element%
-{0:826}}*default-\/database-\/type*\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:827}}\Node%
-{\def\Element%
-{0:828}}*initialized-\/database-\/types*\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:829}}\Node%
-{\def\Element%
-{0:830}}Exceptional Situations\endNode{}\Node%
-{\def\Element%
-{0:831}}If an error is encountered during the initialization
- attempt, the back-\/end may signal errors of kind
- \Node%
-{\def\Element%
-{0:832}}maisql-\/error\endNode{}.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:833}}\Node%
-{\def\Element%
-{0:834}}See Also\endNode{}\Node%
-{\def\Element%
-{0:835}}None.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:836}}\Node%
-{\def\Element%
-{0:837}}Notes\endNode{}\Node%
-{\def\Element%
-{0:838}}None.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:CONNECT-IF-EXISTS}}\Node%
-{\def\Element%
-{0:840}}\Node%
-{\def\Element%
-{0:841}}*CONNECT-\/IF-\/EXISTS*\endNode{}\Node%
-{\def\Element%
-{0:842}}Default value for the
- \Node%
-{\def\Element%
-{0:843}}if-\/exists\endNode{} parameter of
- \Node%
-{\def\Element%
-{0:844}}connect\endNode{}.\endNode{}\Node%
-{\def\Element%
-{0:845}}Variable\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:846}}\Node%
-{\def\Element%
-{0:847}}Value Type\endNode{}\Node%
-{\def\Element%
-{0:848}}A valid argument to the \Node%
-{\def\Element%
-{0:849}}if-\/exists\endNode{}
- parameter of \Node%
-{\def\Element%
-{0:850}}connect\endNode{}, i.e. one of
- \Node%
-{\def\Element%
-{0:851}}\Node%
-{\def\Element%
-{0:852}}\Node%
-{\def\Element%
-{0:853}}:new\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:854}}\Node%
-{\def\Element%
-{0:855}}:warn-\/new\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:856}}\Node%
-{\def\Element%
-{0:857}}:error\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:858}}\Node%
-{\def\Element%
-{0:859}}:warn-\/old\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:860}}\Node%
-{\def\Element%
-{0:861}}:old\endNode{}\endNode{}\endNode{}.
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:862}}\Node%
-{\def\Element%
-{0:863}}Initial Value\endNode{}\Node%
-{\def\Element%
-{0:864}}\Node%
-{\def\Element%
-{0:865}}:error\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:866}}\Node%
-{\def\Element%
-{0:867}}Description\endNode{}\Node%
-{\def\Element%
-{0:868}}The value of this variable is used in calls to
- \Node%
-{\def\Element%
-{0:869}}connect\endNode{} as the default
- value of the \Node%
-{\def\Element%
-{0:870}}if-\/exists\endNode{}
- parameter. See \Node%
-{\def\Element%
-{0:871}}\Node%
-{\def\Element%
-{0:872}}connect\endNode{}\endNode{} for
- the semantics of the valid values for this variable.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:873}}\Node%
-{\def\Element%
-{0:874}}Examples\endNode{}\Node%
-{\def\Element%
-{0:875}}None.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:876}}\Node%
-{\def\Element%
-{0:877}}Affected By\endNode{}\Node%
-{\def\Element%
-{0:878}}None.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:879}}\Node%
-{\def\Element%
-{0:880}}See Also\endNode{}\Node%
-{\def\Element%
-{0:881}} \Node%
-{\def\Element%
-{0:882}}\Node%
-{\def\Element%
-{0:883}}\Node%
-{\def\Element%
-{0:884}}\Node%
-{\def\Element%
-{0:885}}connect\endNode{}\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:886}}\Node%
-{\def\Element%
-{0:887}}Notes\endNode{}\Node%
-{\def\Element%
-{0:888}}None.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:CONNECTED-DATABASES}}\Node%
-{\def\Element%
-{0:890}}\Node%
-{\def\Element%
-{0:891}}CONNECTED-\/DATABASES\endNode{}\Node%
-{\def\Element%
-{0:892}}Return the list of active database
- objects.\endNode{}\Node%
-{\def\Element%
-{0:893}}Function\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:894}}\Node%
-{\def\Element%
-{0:895}}Syntax\endNode{}\Node%
-{\def\Element%
-{0:896}}\Node%
-{\def\Element%
-{0:897}}connected-\/databases\endNode{} =>\/ \Node%
-{\def\Element%
-{0:898}}databases\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:899}}\Node%
-{\def\Element%
-{0:900}}Arguments and Values\endNode{}\Node%
-{\def\Element%
-{0:901}}\Node%
-{\def\Element%
-{0:902}}\Node%
-{\def\Element%
-{0:903}}\Node%
-{\def\Element%
-{0:904}}databases\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:905}}\Node%
-{\def\Element%
-{0:906}}The list of active database objects.\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:907}}\Node%
-{\def\Element%
-{0:908}}Description\endNode{}\Node%
-{\def\Element%
-{0:909}}This function returns the list of active database
- objects, i.e. all those database objects created by calls to
- \Node%
-{\def\Element%
-{0:910}}connect\endNode{}, which have not been closed by
- calling \Node%
-{\def\Element%
-{0:911}}disconnect\endNode{} on them.\endNode{}\Node%
-{\def\Element%
-{0:912}}\Node%
-{\def\Element%
-{0:913}}The consequences of modifying the list returned by
- \Node%
-{\def\Element%
-{0:914}}connected-\/databases\endNode{} are
- undefined.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:915}}\Node%
-{\def\Element%
-{0:916}}Examples\endNode{}\Node%
-{\def\Element%
-{0:917}}(connected-\/databases)
-=>\/ NIL
-(connect '(nil "template1" "dent" nil) :database-\/type :postgresql)
-=>\/ \#\Entity{lt}CLSQL-\/POSTGRESQL:POSTGRESQL-\/DATABASE \{4830BC65\}>\/
-(connect '("dent" "newesim" "dent" "dent") :database-\/type :mysql)
-=>\/ \#\Entity{lt}CLSQL-\/MYSQL:MYSQL-\/DATABASE \{4830C5AD\}>\/
-(connected-\/databases)
-=>\/ (\#\Entity{lt}CLSQL-\/MYSQL:MYSQL-\/DATABASE \{4830C5AD\}>\/
- \#\Entity{lt}CLSQL-\/POSTGRESQL:POSTGRESQL-\/DATABASE \{4830BC65\}>\/)
-(disconnect)
-=>\/ T
-(connected-\/databases)
-=>\/ (\#\Entity{lt}CLSQL-\/POSTGRESQL:POSTGRESQL-\/DATABASE \{4830BC65\}>\/)
-(disconnect)
-=>\/ T
-(connected-\/databases)
-=>\/ NIL
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:918}}\Node%
-{\def\Element%
-{0:919}}Side Effects\endNode{}\Node%
-{\def\Element%
-{0:920}}None.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:921}}\Node%
-{\def\Element%
-{0:922}}Affected By\endNode{}\Node%
-{\def\Element%
-{0:923}} \Node%
-{\def\Element%
-{0:924}}\Node%
-{\def\Element%
-{0:925}}\Node%
-{\def\Element%
-{0:926}}connect\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:927}}\Node%
-{\def\Element%
-{0:928}}disconnect\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:929}}\Node%
-{\def\Element%
-{0:930}}Exceptional Situations\endNode{}\Node%
-{\def\Element%
-{0:931}}None.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:932}}\Node%
-{\def\Element%
-{0:933}}See Also\endNode{}\Node%
-{\def\Element%
-{0:934}}None.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:935}}\Node%
-{\def\Element%
-{0:936}}Notes\endNode{}\Node%
-{\def\Element%
-{0:937}}None.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:DEFAULT-DATABASE}}\Node%
-{\def\Element%
-{0:939}}\Node%
-{\def\Element%
-{0:940}}*DEFAULT-\/DATABASE*\endNode{}\Node%
-{\def\Element%
-{0:941}}The default database object to use\endNode{}\Node%
-{\def\Element%
-{0:942}}Variable\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:943}}\Node%
-{\def\Element%
-{0:944}}Value Type\endNode{}\Node%
-{\def\Element%
-{0:945}}Any object of type \Node%
-{\def\Element%
-{0:946}}database\endNode{}, or nil to
- indicate no default database.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:947}}\Node%
-{\def\Element%
-{0:948}}Initial Value\endNode{}\Node%
-{\def\Element%
-{0:949}}\Node%
-{\def\Element%
-{0:950}}nil\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:951}}\Node%
-{\def\Element%
-{0:952}}Description\endNode{}\Node%
-{\def\Element%
-{0:953}}Any function or macro in
- \Node%
-{\def\Element%
-{0:954}}\Node%
-{\def\Element%
-{0:955}}CLSQL\endNode{}\endNode{} that operates on a
- database uses the value of this variable as the default
- value for it's \Node%
-{\def\Element%
-{0:956}}database\endNode{}
- parameter.\endNode{}\Node%
-{\def\Element%
-{0:957}}The value of this parameter is changed by calls to
- \Node%
-{\def\Element%
-{0:958}}connect\endNode{}, which sets
- \Node%
-{\def\Element%
-{0:959}}*default-\/database*\endNode{} to the database object
- it returns. It is also changed by calls to
- \Node%
-{\def\Element%
-{0:960}}disconnect\endNode{}, when the database object
- being disconnected is the same as the value of
- \Node%
-{\def\Element%
-{0:961}}*default-\/database*\endNode{}. In this case
- \Node%
-{\def\Element%
-{0:962}}disconnect\endNode{} sets
- \Node%
-{\def\Element%
-{0:963}}*default-\/database*\endNode{} to the first database
- that remains in the list of active databases as returned by
- \Node%
-{\def\Element%
-{0:964}}connected-\/databases\endNode{}, or
- \Node%
-{\def\Element%
-{0:965}}nil\endNode{} if no further active databases
- exist.\endNode{}\Node%
-{\def\Element%
-{0:966}}The user may change \Node%
-{\def\Element%
-{0:967}}*default-\/database*\endNode{}
- at any time to a valid value of his choice.\endNode{}\Node%
-{\def\Element%
-{0:968}}\Node%
-{\def\Element%
-{0:969}}If the value of \Node%
-{\def\Element%
-{0:970}}*default-\/database*\endNode{} is
- \Node%
-{\def\Element%
-{0:971}}nil\endNode{}, then all calls to
- \Node%
-{\def\Element%
-{0:972}}\Node%
-{\def\Element%
-{0:973}}CLSQL\endNode{}\endNode{} functions on databases
- must provide a suitable \Node%
-{\def\Element%
-{0:974}}database\endNode{}
- parameter, or an error will be signalled.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:975}}\Node%
-{\def\Element%
-{0:976}}Examples\endNode{}\Node%
-{\def\Element%
-{0:977}}(connected-\/databases)
-=>\/ NIL
-(connect '("dent" "newesim" "dent" "dent") :database-\/type :mysql)
-=>\/ \#\Entity{lt}CLSQL-\/MYSQL:MYSQL-\/DATABASE \{48385F55\}>\/
-(connect '(nil "template1" "dent" nil) :database-\/type :postgresql)
-=>\/ \#\Entity{lt}CLSQL-\/POSTGRESQL:POSTGRESQL-\/DATABASE \{483868FD\}>\/
-(connect '("dent" "newesim" "dent" "dent") :database-\/type :mysql :if-\/exists :new)
-=>\/ \#\Entity{lt}CLSQL-\/MYSQL:MYSQL-\/DATABASE \{48387265\}>\/
-*default-\/database*
-=>\/ \#\Entity{lt}CLSQL-\/MYSQL:MYSQL-\/DATABASE \{48387265\}>\/
-(disconnect)
-=>\/ T
-*default-\/database*
-=>\/ \#\Entity{lt}CLSQL-\/POSTGRESQL:POSTGRESQL-\/DATABASE \{483868FD\}>\/
-(disconnect)
-=>\/ T
-*default-\/database*
-=>\/ \#\Entity{lt}CLSQL-\/MYSQL:MYSQL-\/DATABASE \{48385F55\}>\/
-(disconnect)
-=>\/ T
-*default-\/database*
-=>\/ NIL
-(connected-\/databases)
-=>\/ NIL
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:978}}\Node%
-{\def\Element%
-{0:979}}Affected By\endNode{}\Node%
-{\def\Element%
-{0:980}} \Node%
-{\def\Element%
-{0:981}}\Node%
-{\def\Element%
-{0:982}}\Node%
-{\def\Element%
-{0:983}}\Node%
-{\def\Element%
-{0:984}}connect\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:985}}\Node%
-{\def\Element%
-{0:986}}\Node%
-{\def\Element%
-{0:987}}disconnect\endNode{}\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:988}}\Node%
-{\def\Element%
-{0:989}}See Also\endNode{}\Node%
-{\def\Element%
-{0:990}} \Node%
-{\def\Element%
-{0:991}}\Node%
-{\def\Element%
-{0:992}}\Node%
-{\def\Element%
-{0:993}}\Node%
-{\def\Element%
-{0:994}}connected-\/databases\endNode{}\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:995}}\Node%
-{\def\Element%
-{0:996}}Notes\endNode{}\Node%
-{\def\Element%
-{0:997}}\Node%
-{\def\Element%
-{0:998}}This variable is intended to facilitate working with
- \Node%
-{\def\Element%
-{0:999}}\Node%
-{\def\Element%
-{0:1000}}CLSQL\endNode{}\endNode{} in an interactive
- fashion at the top-\/level loop, and because of this,
- \Node%
-{\def\Element%
-{0:1001}}connect\endNode{} and
- \Node%
-{\def\Element%
-{0:1002}}disconnect\endNode{} provide some fairly
- complex behaviour to keep
- \Node%
-{\def\Element%
-{0:1003}}*default-\/database*\endNode{} set to useful values.
- Programmatic use of \Node%
-{\def\Element%
-{0:1004}}\Node%
-{\def\Element%
-{0:1005}}CLSQL\endNode{}\endNode{}
- should never depend on the value of
- \Node%
-{\def\Element%
-{0:1006}}*default-\/database*\endNode{} and should provide
- correct database objects via the
- \Node%
-{\def\Element%
-{0:1007}}database\endNode{} parameter to functions
- called.\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:DATABASE}}\Node%
-{\def\Element%
-{0:1009}}\Node%
-{\def\Element%
-{0:1010}}DATABASE\endNode{}\Node%
-{\def\Element%
-{0:1011}}The super-\/type of all
- \Node%
-{\def\Element%
-{0:1012}}\Node%
-{\def\Element%
-{0:1013}}CLSQL\endNode{}\endNode{} databases\endNode{}\Node%
-{\def\Element%
-{0:1014}}Class\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1015}}\Node%
-{\def\Element%
-{0:1016}}Class Precedence List\endNode{}\Node%
-{\def\Element%
-{0:1017}} \Node%
-{\def\Element%
-{0:1018}}\Node%
-{\def\Element%
-{0:1019}}\Node%
-{\def\Element%
-{0:1020}}database\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1021}}\Node%
-{\def\Element%
-{0:1022}}standard-\/object\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1023}}\Node%
-{\def\Element%
-{0:1024}}t\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1025}}\Node%
-{\def\Element%
-{0:1026}}Description\endNode{}\Node%
-{\def\Element%
-{0:1027}}This class is the superclass of all
- \Node%
-{\def\Element%
-{0:1028}}\Node%
-{\def\Element%
-{0:1029}}CLSQL\endNode{}\endNode{} databases. The different
- database back-\/ends derive subclasses of this class to
- implement their databases. No instances of this class are
- ever created by \Node%
-{\def\Element%
-{0:1030}}\Node%
-{\def\Element%
-{0:1031}}CLSQL\endNode{}\endNode{}.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:CLOSED-DATABASE}}\Node%
-{\def\Element%
-{0:1033}}\Node%
-{\def\Element%
-{0:1034}}CLOSED-\/DATABASE\endNode{}\Node%
-{\def\Element%
-{0:1035}}The class representing all closed
- \Node%
-{\def\Element%
-{0:1036}}\Node%
-{\def\Element%
-{0:1037}}CLSQL\endNode{}\endNode{} databases\endNode{}\Node%
-{\def\Element%
-{0:1038}}Class\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1039}}\Node%
-{\def\Element%
-{0:1040}}Class Precedence List\endNode{}\Node%
-{\def\Element%
-{0:1041}} \Node%
-{\def\Element%
-{0:1042}}\Node%
-{\def\Element%
-{0:1043}}\Node%
-{\def\Element%
-{0:1044}}closed-\/database\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1045}}\Node%
-{\def\Element%
-{0:1046}}standard-\/object\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1047}}\Node%
-{\def\Element%
-{0:1048}}t\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1049}}\Node%
-{\def\Element%
-{0:1050}}Description\endNode{}\Node%
-{\def\Element%
-{0:1051}}\Node%
-{\def\Element%
-{0:1052}}\Node%
-{\def\Element%
-{0:1053}}CLSQL\endNode{}\endNode{} \Node%
-{\def\Element%
-{0:1054}}database\endNode{}
- instances are changed to this class via
- \Node%
-{\def\Element%
-{0:1055}}change-\/class\endNode{} after they are closed via
- \Node%
-{\def\Element%
-{0:1056}}disconnect\endNode{}. All functions and generic
- functions that take database objects as arguments will
- signal errors of type
- \Node%
-{\def\Element%
-{0:1057}}maisql-\/closed-\/error\endNode{} when they are
- called on instances of \Node%
-{\def\Element%
-{0:1058}}closed-\/database\endNode{}, with
- the exception of \Node%
-{\def\Element%
-{0:1059}}database-\/name\endNode{}, which
- will continue to work as for instances of
- \Node%
-{\def\Element%
-{0:1060}}database\endNode{}.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:DATABASE-NAME}}\Node%
-{\def\Element%
-{0:1062}}\Node%
-{\def\Element%
-{0:1063}}DATABASE-\/NAME\endNode{}\Node%
-{\def\Element%
-{0:1064}}Get the name of a database object\endNode{}\Node%
-{\def\Element%
-{0:1065}}Generic Function\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1066}}\Node%
-{\def\Element%
-{0:1067}}Syntax\endNode{}\Node%
-{\def\Element%
-{0:1068}}\Node%
-{\def\Element%
-{0:1069}}database-\/name\endNode{} \Node%
-{\def\Element%
-{0:1070}}database\endNode{} =>\/ \Node%
-{\def\Element%
-{0:1071}}name\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1072}}\Node%
-{\def\Element%
-{0:1073}}Arguments and Values\endNode{}\Node%
-{\def\Element%
-{0:1074}}\Node%
-{\def\Element%
-{0:1075}}\Node%
-{\def\Element%
-{0:1076}}\Node%
-{\def\Element%
-{0:1077}}database\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1078}}\Node%
-{\def\Element%
-{0:1079}}A database object, either of type
- \Node%
-{\def\Element%
-{0:1080}}database\endNode{} or of type
- \Node%
-{\def\Element%
-{0:1081}}closed-\/database\endNode{}.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1082}}\Node%
-{\def\Element%
-{0:1083}}\Node%
-{\def\Element%
-{0:1084}}name\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1085}}\Node%
-{\def\Element%
-{0:1086}}A string describing the identity of the database
- to which this database object is connected to.\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1087}}\Node%
-{\def\Element%
-{0:1088}}Description\endNode{}\Node%
-{\def\Element%
-{0:1089}}This function returns the database name of the given
- database. The database name is a string which somehow
- describes the identity of the database to which this
- database object is or has been connected. The database name
- of a database object is determined at
- \Node%
-{\def\Element%
-{0:1090}}connect\endNode{} time, when a call to
- \Node%
-{\def\Element%
-{0:1091}}database-\/name-\/from-\/spec\endNode{} derives the
- database name from the connection specification passed to
- \Node%
-{\def\Element%
-{0:1092}}connect\endNode{} in the
- \Node%
-{\def\Element%
-{0:1093}}connection-\/spec\endNode{} parameter.\endNode{}\Node%
-{\def\Element%
-{0:1094}}The database name is used via
- \Node%
-{\def\Element%
-{0:1095}}find-\/database\endNode{} in
- \Node%
-{\def\Element%
-{0:1096}}connect\endNode{} to determine whether database
- connections to the specified database exist already.\endNode{}\Node%
-{\def\Element%
-{0:1097}}Usually the database name string will include
- indications of the host, database name, user, or port that
- where used during the connection attempt. The only
- important thing is that this string shall try to identify
- the database at the other end of the connection. Connection
- specifications parts like passwords and credentials shall
- not be used as part of the database name.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1098}}\Node%
-{\def\Element%
-{0:1099}}Examples\endNode{}\Node%
-{\def\Element%
-{0:1100}}(database-\/name-\/from-\/spec '("dent" "newesim" "dent" "dent") :mysql)
-=>\/ "dent/newesim/dent"
-(connect '("dent" "newesim" "dent" "dent") :database-\/type :mysql)
-=>\/ \#\Entity{lt}CLSQL-\/MYSQL:MYSQL-\/DATABASE \{48391DCD\}>\/
-(database-\/name *default-\/database*)
-=>\/ "dent/newesim/dent"
-
-(database-\/name-\/from-\/spec '(nil "template1" "dent" nil) :postgresql)
-=>\/ "/template1/dent"
-(connect '(nil "template1" "dent" nil) :database-\/type :postgresql)
-=>\/ \#\Entity{lt}CLSQL-\/POSTGRESQL:POSTGRESQL-\/DATABASE \{48392D2D\}>\/
-(database-\/name *default-\/database*)
-=>\/ "/template1/dent"
-
-(database-\/name-\/from-\/spec '("www.pmsf.de" "template1" "dent" nil) :postgresql)
-=>\/ "www.pmsf.de/template1/dent"
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1101}}\Node%
-{\def\Element%
-{0:1102}}Side Effects\endNode{}\Node%
-{\def\Element%
-{0:1103}}None.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1104}}\Node%
-{\def\Element%
-{0:1105}}Affected By\endNode{}\Node%
-{\def\Element%
-{0:1106}} \Node%
-{\def\Element%
-{0:1107}}\Node%
-{\def\Element%
-{0:1108}}\Node%
-{\def\Element%
-{0:1109}}\Node%
-{\def\Element%
-{0:1110}}database-\/name-\/from-\/spec\endNode{}\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1111}}\Node%
-{\def\Element%
-{0:1112}}Exceptional Situations\endNode{}\Node%
-{\def\Element%
-{0:1113}}Will signal an error if the object passed as the
- \Node%
-{\def\Element%
-{0:1114}}database\endNode{} parameter is neither of type
- \Node%
-{\def\Element%
-{0:1115}}database\endNode{} nor of type
- \Node%
-{\def\Element%
-{0:1116}}closed-\/database\endNode{}.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1117}}\Node%
-{\def\Element%
-{0:1118}}See Also\endNode{}\Node%
-{\def\Element%
-{0:1119}} \Node%
-{\def\Element%
-{0:1120}}\Node%
-{\def\Element%
-{0:1121}}\Node%
-{\def\Element%
-{0:1122}}\Node%
-{\def\Element%
-{0:1123}}connect\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1124}}\Node%
-{\def\Element%
-{0:1125}}\Node%
-{\def\Element%
-{0:1126}}find-\/database\endNode{}\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1127}}\Node%
-{\def\Element%
-{0:1128}}Notes\endNode{}\Node%
-{\def\Element%
-{0:1129}}None.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:FIND-DATABASE}}\Node%
-{\def\Element%
-{0:1131}}\Node%
-{\def\Element%
-{0:1132}}FIND-\/DATABASE\endNode{}\Node%
-{\def\Element%
-{0:1133}}Locate a database object through it's
- name.\endNode{}\Node%
-{\def\Element%
-{0:1134}}Function\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1135}}\Node%
-{\def\Element%
-{0:1136}}Syntax\endNode{}\Node%
-{\def\Element%
-{0:1137}}\Node%
-{\def\Element%
-{0:1138}}find-\/database\endNode{} \Node%
-{\def\Element%
-{0:1139}}database\endNode{} \Entity{amp}optional \Node%
-{\def\Element%
-{0:1140}}errorp\endNode{} =>\/ \Node%
-{\def\Element%
-{0:1141}}result\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1142}}\Node%
-{\def\Element%
-{0:1143}}Arguments and Values\endNode{}\Node%
-{\def\Element%
-{0:1144}}\Node%
-{\def\Element%
-{0:1145}}\Node%
-{\def\Element%
-{0:1146}}\Node%
-{\def\Element%
-{0:1147}}database\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1148}}\Node%
-{\def\Element%
-{0:1149}}A database object or a string, denoting a database
- name.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1150}}\Node%
-{\def\Element%
-{0:1151}}\Node%
-{\def\Element%
-{0:1152}}errorp\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1153}}\Node%
-{\def\Element%
-{0:1154}}A generalized boolean. Defaults to
- \Node%
-{\def\Element%
-{0:1155}}t\endNode{}.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1156}}\Node%
-{\def\Element%
-{0:1157}}\Node%
-{\def\Element%
-{0:1158}}result\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1159}}\Node%
-{\def\Element%
-{0:1160}}Either a database object, or, if
- \Node%
-{\def\Element%
-{0:1161}}errorp\endNode{} is \Node%
-{\def\Element%
-{0:1162}}nil\endNode{},
- possibly \Node%
-{\def\Element%
-{0:1163}}nil\endNode{}.\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1164}}\Node%
-{\def\Element%
-{0:1165}}Description\endNode{}\Node%
-{\def\Element%
-{0:1166}}\Node%
-{\def\Element%
-{0:1167}}find-\/database\endNode{} locates an active
- database object given the specification in
- \Node%
-{\def\Element%
-{0:1168}}database\endNode{}. If
- \Node%
-{\def\Element%
-{0:1169}}database\endNode{} is an object of type
- \Node%
-{\def\Element%
-{0:1170}}database\endNode{}, \Node%
-{\def\Element%
-{0:1171}}find-\/database\endNode{}
- returns this. Otherwise it will search the active databases
- as indicated by the list returned by
- \Node%
-{\def\Element%
-{0:1172}}connected-\/databases\endNode{} for a database
- whose name (as returned by
- \Node%
-{\def\Element%
-{0:1173}}database-\/name\endNode{} is equal as per
- \Node%
-{\def\Element%
-{0:1174}}string=\endNode{} to the string passed as
- \Node%
-{\def\Element%
-{0:1175}}database\endNode{}. If it succeeds, it returns
- the first database found.\endNode{}\Node%
-{\def\Element%
-{0:1176}}If it fails to find a matching database, it will signal
- an error of type \Node%
-{\def\Element%
-{0:1177}}maisql-\/error\endNode{} if
- \Node%
-{\def\Element%
-{0:1178}}errorp\endNode{} is true. If
- \Node%
-{\def\Element%
-{0:1179}}errorp\endNode{} is \Node%
-{\def\Element%
-{0:1180}}nil\endNode{}, it
- will return \Node%
-{\def\Element%
-{0:1181}}nil\endNode{} instead.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1182}}\Node%
-{\def\Element%
-{0:1183}}Examples\endNode{}\Node%
-{\def\Element%
-{0:1184}}(database-\/name-\/from-\/spec '("dent" "newesim" "dent" "dent") :mysql)
-=>\/ "dent/newesim/dent"
-(connect '("dent" "newesim" "dent" "dent") :database-\/type :mysql)
-=>\/ \#\Entity{lt}CLSQL-\/MYSQL:MYSQL-\/DATABASE \{48391DCD\}>\/
-(database-\/name *default-\/database*)
-=>\/ "dent/newesim/dent"
-
-(database-\/name-\/from-\/spec '(nil "template1" "dent" nil) :postgresql)
-=>\/ "/template1/dent"
-(connect '(nil "template1" "dent" nil) :database-\/type :postgresql)
-=>\/ \#\Entity{lt}CLSQL-\/POSTGRESQL:POSTGRESQL-\/DATABASE \{48392D2D\}>\/
-(database-\/name *default-\/database*)
-=>\/ "/template1/dent"
-
-(database-\/name-\/from-\/spec '("www.pmsf.de" "template1" "dent" nil) :postgresql)
-=>\/ "www.pmsf.de/template1/dent"
-
-(find-\/database "dent/newesim/dent")
-=>\/ \#\Entity{lt}CLSQL-\/MYSQL:MYSQL-\/DATABASE \{484E91C5\}>\/
-(find-\/database "/template1/dent")
-=>\/ \#\Entity{lt}CLSQL-\/POSTGRESQL:POSTGRESQL-\/DATABASE \{48392D2D\}>\/
-(find-\/database "www.pmsf.de/template1/dent" nil)
-=>\/ NIL
-(find-\/database **)
-=>\/ \#\Entity{lt}CLSQL-\/POSTGRESQL:POSTGRESQL-\/DATABASE \{48392D2D\}>\/
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1185}}\Node%
-{\def\Element%
-{0:1186}}Side Effects\endNode{}\Node%
-{\def\Element%
-{0:1187}}None.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1188}}\Node%
-{\def\Element%
-{0:1189}}Affected By\endNode{}\Node%
-{\def\Element%
-{0:1190}} \Node%
-{\def\Element%
-{0:1191}}\Node%
-{\def\Element%
-{0:1192}}\Node%
-{\def\Element%
-{0:1193}}\Node%
-{\def\Element%
-{0:1194}}connected-\/databases\endNode{}\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1195}}\Node%
-{\def\Element%
-{0:1196}}Exceptional Situations\endNode{}\Node%
-{\def\Element%
-{0:1197}}Will signal an error of type
- \Node%
-{\def\Element%
-{0:1198}}maisql-\/error\endNode{} if no matching database
- can be found, and \Node%
-{\def\Element%
-{0:1199}}errorp\endNode{} is true.
- Will signal an error if the value of
- \Node%
-{\def\Element%
-{0:1200}}database\endNode{} is neither an object of type
- \Node%
-{\def\Element%
-{0:1201}}database\endNode{} nor a string.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1202}}\Node%
-{\def\Element%
-{0:1203}}See Also\endNode{}\Node%
-{\def\Element%
-{0:1204}} \Node%
-{\def\Element%
-{0:1205}}\Node%
-{\def\Element%
-{0:1206}}\Node%
-{\def\Element%
-{0:1207}}\Node%
-{\def\Element%
-{0:1208}}database-\/name\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1209}}\Node%
-{\def\Element%
-{0:1210}}\Node%
-{\def\Element%
-{0:1211}}database-\/name-\/from-\/spec\endNode{}\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1212}}\Node%
-{\def\Element%
-{0:1213}}Notes\endNode{}\Node%
-{\def\Element%
-{0:1214}}None.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:CONNECT}}\Node%
-{\def\Element%
-{0:1216}}\Node%
-{\def\Element%
-{0:1217}}CONNECT\endNode{}\Node%
-{\def\Element%
-{0:1218}}create a connection to a database\endNode{}\Node%
-{\def\Element%
-{0:1219}}Function\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1220}}\Node%
-{\def\Element%
-{0:1221}}Syntax\endNode{}\Node%
-{\def\Element%
-{0:1222}}\Node%
-{\def\Element%
-{0:1223}}connect\endNode{} \Node%
-{\def\Element%
-{0:1224}}connection-\/spec\endNode{} \Entity{amp}key \Node%
-{\def\Element%
-{0:1225}}if-\/exists\endNode{} \Node%
-{\def\Element%
-{0:1226}}database-\/type\endNode{} =>\/ \Node%
-{\def\Element%
-{0:1227}}database\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1228}}\Node%
-{\def\Element%
-{0:1229}}Arguments and Values\endNode{}\Node%
-{\def\Element%
-{0:1230}}\Node%
-{\def\Element%
-{0:1231}}\Node%
-{\def\Element%
-{0:1232}}\Node%
-{\def\Element%
-{0:1233}}connection-\/spec\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1234}}\Node%
-{\def\Element%
-{0:1235}}A connection specification\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1236}}\Node%
-{\def\Element%
-{0:1237}}\Node%
-{\def\Element%
-{0:1238}}if-\/exists\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1239}}\Node%
-{\def\Element%
-{0:1240}}This indicates the action to take if a connection
- to the same database exists already. See below for the
- legal values and actions. It defaults to the value of
- \Node%
-{\def\Element%
-{0:1241}}*connect-\/if-\/exists*\endNode{}.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1242}}\Node%
-{\def\Element%
-{0:1243}}\Node%
-{\def\Element%
-{0:1244}}database-\/type\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1245}}\Node%
-{\def\Element%
-{0:1246}}A database type specifier, i.e. a keyword.
- This defaults to the value of
- \Node%
-{\def\Element%
-{0:1247}}*default-\/database-\/type*\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1248}}\Node%
-{\def\Element%
-{0:1249}}\Node%
-{\def\Element%
-{0:1250}}database\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1251}}\Node%
-{\def\Element%
-{0:1252}}The database object representing the connection.\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1253}}\Node%
-{\def\Element%
-{0:1254}}Description\endNode{}\Node%
-{\def\Element%
-{0:1255}}This function takes a connection specification and
- a database type and creates a connection to the database
- specified by those. The type and structure of the
- connection specification depend on the database type.\endNode{}\Node%
-{\def\Element%
-{0:1256}}The parameter \Node%
-{\def\Element%
-{0:1257}}if-\/exists\endNode{} specifies
- what to do if a connection to the database specified exists
- already, which is checked by calling
- \Node%
-{\def\Element%
-{0:1258}}find-\/database\endNode{} on the database name
- returned by \Node%
-{\def\Element%
-{0:1259}}database-\/name-\/from-\/spec\endNode{}
- when called with the \Node%
-{\def\Element%
-{0:1260}}connection-\/spec\endNode{}
- and \Node%
-{\def\Element%
-{0:1261}}database-\/type\endNode{} parameters. The
- possible values of \Node%
-{\def\Element%
-{0:1262}}if-\/exists\endNode{} are:
- \Node%
-{\def\Element%
-{0:1263}}\Node%
-{\def\Element%
-{0:1264}}\Node%
-{\def\Element%
-{0:1265}}\Node%
-{\def\Element%
-{0:1266}}:new\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1267}}\Node%
-{\def\Element%
-{0:1268}}Go ahead and create a new connection.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1269}}\Node%
-{\def\Element%
-{0:1270}}\Node%
-{\def\Element%
-{0:1271}}:warn-\/new\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1272}}\Node%
-{\def\Element%
-{0:1273}}This is just like \Node%
-{\def\Element%
-{0:1274}}:new\endNode{}, but
- also signals a warning of type
- \Node%
-{\def\Element%
-{0:1275}}maisql-\/exists-\/warning\endNode{},
- indicating the old and newly created
- databases.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1276}}\Node%
-{\def\Element%
-{0:1277}}\Node%
-{\def\Element%
-{0:1278}}:error\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1279}}\Node%
-{\def\Element%
-{0:1280}}This will cause \Node%
-{\def\Element%
-{0:1281}}connect\endNode{} to
- signal a correctable error of type
- \Node%
-{\def\Element%
-{0:1282}}maisql-\/exists-\/error\endNode{}. The
- user may choose to proceed, either by indicating
- that a new connection shall be created, via the
- restart \Node%
-{\def\Element%
-{0:1283}}create-\/new\endNode{}, or by
- indicating that the existing connection shall be
- used, via the restart
- \Node%
-{\def\Element%
-{0:1284}}use-\/old\endNode{}.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1285}}\Node%
-{\def\Element%
-{0:1286}}\Node%
-{\def\Element%
-{0:1287}}:old\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1288}}\Node%
-{\def\Element%
-{0:1289}}This will cause \Node%
-{\def\Element%
-{0:1290}}connect\endNode{} to
- use an old connection if one exists.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1291}}\Node%
-{\def\Element%
-{0:1292}}\Node%
-{\def\Element%
-{0:1293}}:warn-\/old\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1294}}\Node%
-{\def\Element%
-{0:1295}}This is just like \Node%
-{\def\Element%
-{0:1296}}:old\endNode{}, but
- also signals a warning of type
- \Node%
-{\def\Element%
-{0:1297}}maisql-\/exists-\/warning\endNode{},
- indicating the old database used, via the slots
- \Node%
-{\def\Element%
-{0:1298}}old-\/db\endNode{} and
- \Node%
-{\def\Element%
-{0:1299}}new-\/db\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}
- \endNode{}\Node%
-{\def\Element%
-{0:1300}}The database name of the returned database object will
- be the same under \Node%
-{\def\Element%
-{0:1301}}string=\endNode{} as that which
- would be returned by a call to
- \Node%
-{\def\Element%
-{0:1302}}database-\/name-\/from-\/spec\endNode{} with the given
- \Node%
-{\def\Element%
-{0:1303}}connection-\/spec\endNode{} and
- \Node%
-{\def\Element%
-{0:1304}}database-\/type\endNode{} parameters.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1305}}\Node%
-{\def\Element%
-{0:1306}}Examples\endNode{}\Node%
-{\def\Element%
-{0:1307}}(database-\/name-\/from-\/spec '("dent" "newesim" "dent" "dent") :mysql)
-=>\/ "dent/newesim/dent"
-(connect '("dent" "newesim" "dent" "dent") :database-\/type :mysql)
-=>\/ \#\Entity{lt}CLSQL-\/MYSQL:MYSQL-\/DATABASE \{48036F6D\}>\/
-(database-\/name *)
-=>\/ "dent/newesim/dent"
-
-(connect '("dent" "newesim" "dent" "dent") :database-\/type :mysql)
->\/>\/ In call to CONNECT:
->\/>\/ There is an existing connection \#\Entity{lt}CLSQL-\/MYSQL:MYSQL-\/DATABASE \{48036F6D\}>\/ to database dent/newesim/dent.
->\/>\/
->\/>\/ Restarts:
->\/>\/ 0: [CREATE-\/NEW] Create a new connection.
->\/>\/ 1: [USE-\/OLD ] Use the existing connection.
->\/>\/ 2: [ABORT ] Return to Top-\/Level.
->\/>\/
->\/>\/ Debug (type H for help)
->\/>\/
->\/>\/ (CONNECT ("dent" "newesim" "dent" "dent") :IF-\/EXISTS NIL :DATABASE-\/TYPE ...)
->\/>\/ Source:
->\/>\/ ; File: /prj/CLSQL/sql/sql.cl
->\/>\/ (RESTART-\/CASE (ERROR 'CLSQL-\/EXISTS-\/ERROR :OLD-\/DB OLD-\/DB)
->\/>\/ (CREATE-\/NEW NIL :REPORT "Create a new connection."
->\/>\/ (SETQ RESULT \#))
->\/>\/ (USE-\/OLD NIL :REPORT "Use the existing connection."
->\/>\/ (SETQ RESULT OLD-\/DB)))
->\/>\/ 0] 0
-=>\/ \#\Entity{lt}CLSQL-\/MYSQL:MYSQL-\/DATABASE \{480451F5\}>\/
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1308}}\Node%
-{\def\Element%
-{0:1309}}Side Effects\endNode{}\Node%
-{\def\Element%
-{0:1310}}A database connection is established, and the resultant
- database object is registered, so as to appear in the list
- returned by \Node%
-{\def\Element%
-{0:1311}}connected-\/databases\endNode{}.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1312}}\Node%
-{\def\Element%
-{0:1313}}Affected by\endNode{}\Node%
-{\def\Element%
-{0:1314}} \Node%
-{\def\Element%
-{0:1315}}\Node%
-{\def\Element%
-{0:1316}}\Node%
-{\def\Element%
-{0:1317}}*default-\/database-\/type*\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1318}}\Node%
-{\def\Element%
-{0:1319}}*connect-\/if-\/exists*\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1320}}\Node%
-{\def\Element%
-{0:1321}}Exceptional Situations\endNode{}\Node%
-{\def\Element%
-{0:1322}}If the connection specification is not syntactically or
- semantically correct for the given database type, an error
- of type \Node%
-{\def\Element%
-{0:1323}}maisql-\/invalid-\/spec-\/error\endNode{} is
- signalled. If during the connection attempt an error is
- detected (e.g. because of permission problems, network
- trouble or any other cause), an error of type
- \Node%
-{\def\Element%
-{0:1324}}maisql-\/connect-\/error\endNode{} is
- signalled.\endNode{}\Node%
-{\def\Element%
-{0:1325}}If a connection to the database specified by
- \Node%
-{\def\Element%
-{0:1326}}connection-\/spec\endNode{} exists already,
- conditions are signalled according to the
- \Node%
-{\def\Element%
-{0:1327}}if-\/exists\endNode{} parameter, as described
- above.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1328}}\Node%
-{\def\Element%
-{0:1329}}See Also\endNode{}\Node%
-{\def\Element%
-{0:1330}} \Node%
-{\def\Element%
-{0:1331}}\Node%
-{\def\Element%
-{0:1332}}\Node%
-{\def\Element%
-{0:1333}}connected-\/databases\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1334}}\Node%
-{\def\Element%
-{0:1335}}\Node%
-{\def\Element%
-{0:1336}}disconnect\endNode{}\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1337}}\Node%
-{\def\Element%
-{0:1338}}Notes\endNode{}\Node%
-{\def\Element%
-{0:1339}}None.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:DISCONNECT}}\Node%
-{\def\Element%
-{0:1341}}\Node%
-{\def\Element%
-{0:1342}}DISCONNECT\endNode{}\Node%
-{\def\Element%
-{0:1343}}close a database connection\endNode{}\Node%
-{\def\Element%
-{0:1344}}Function\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1345}}\Node%
-{\def\Element%
-{0:1346}}Syntax\endNode{}\Node%
-{\def\Element%
-{0:1347}}\Node%
-{\def\Element%
-{0:1348}}disconnect\endNode{} \Entity{amp}key \Node%
-{\def\Element%
-{0:1349}}database\endNode{} =>\/ \Node%
-{\def\Element%
-{0:1350}}t\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1351}}\Node%
-{\def\Element%
-{0:1352}}Arguments and Values\endNode{}\Node%
-{\def\Element%
-{0:1353}}\Node%
-{\def\Element%
-{0:1354}}\Node%
-{\def\Element%
-{0:1355}}\Node%
-{\def\Element%
-{0:1356}}database\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1357}}\Node%
-{\def\Element%
-{0:1358}}The database to disconnect, which defaults to the
- database indicated by
- \Node%
-{\def\Element%
-{0:1359}}*default-\/database*\endNode{}.\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1360}}\Node%
-{\def\Element%
-{0:1361}}Description\endNode{}\Node%
-{\def\Element%
-{0:1362}}This function takes a \Node%
-{\def\Element%
-{0:1363}}database\endNode{} object as
- returned by \Node%
-{\def\Element%
-{0:1364}}connect\endNode{}, and closes the
- connection. The class of the object passed is changed to
- \Node%
-{\def\Element%
-{0:1365}}closed-\/database\endNode{} after the disconnection
- succeeds, thereby preventing further use of the object as
- an argument to \Node%
-{\def\Element%
-{0:1366}}\Node%
-{\def\Element%
-{0:1367}}CLSQL\endNode{}\endNode{} functions,
- with the exception of \Node%
-{\def\Element%
-{0:1368}}database-\/name\endNode{}.
- If the user does pass a closed database object to any other
- \Node%
-{\def\Element%
-{0:1369}}\Node%
-{\def\Element%
-{0:1370}}CLSQL\endNode{}\endNode{} function, an error of type
- \Node%
-{\def\Element%
-{0:1371}}maisql-\/closed-\/error\endNode{} is
- signalled.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1372}}\Node%
-{\def\Element%
-{0:1373}}Examples\endNode{}\Node%
-{\def\Element%
-{0:1374}}(disconnect :database (find-\/database "dent/newesim/dent"))
-=>\/ T
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1375}}\Node%
-{\def\Element%
-{0:1376}}Side Effects\endNode{}\Node%
-{\def\Element%
-{0:1377}}The database connection is closed, and the database
- object is removed from the list of connected databases as
- returned by \Node%
-{\def\Element%
-{0:1378}}connected-\/databases\endNode{}.\endNode{}\Node%
-{\def\Element%
-{0:1379}}The class of the database object is changed to
- \Node%
-{\def\Element%
-{0:1380}}closed-\/database\endNode{}.\endNode{}\Node%
-{\def\Element%
-{0:1381}}If the database object passed is the same under
- \Node%
-{\def\Element%
-{0:1382}}eq\endNode{} as the value of
- \Node%
-{\def\Element%
-{0:1383}}*default-\/database*\endNode{}, then
- \Node%
-{\def\Element%
-{0:1384}}*default-\/database*\endNode{} is set to the first
- remaining database from
- \Node%
-{\def\Element%
-{0:1385}}connected-\/databases\endNode{} or to nil if no
- further active database exists.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1386}}\Node%
-{\def\Element%
-{0:1387}}Affected by\endNode{}\Node%
-{\def\Element%
-{0:1388}} \Node%
-{\def\Element%
-{0:1389}}\Node%
-{\def\Element%
-{0:1390}}\Node%
-{\def\Element%
-{0:1391}}*default-\/database*\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1392}}\Node%
-{\def\Element%
-{0:1393}}Exceptional Situations\endNode{}\Node%
-{\def\Element%
-{0:1394}}If during the disconnection attempt an error is
- detected (e.g. because of network trouble or any other
- cause), an error of type \Node%
-{\def\Element%
-{0:1395}}maisql-\/error\endNode{}
- might be signalled.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1396}}\Node%
-{\def\Element%
-{0:1397}}See Also\endNode{}\Node%
-{\def\Element%
-{0:1398}} \Node%
-{\def\Element%
-{0:1399}}\Node%
-{\def\Element%
-{0:1400}}\Node%
-{\def\Element%
-{0:1401}}\Node%
-{\def\Element%
-{0:1402}}connect\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1403}}\Node%
-{\def\Element%
-{0:1404}}\Node%
-{\def\Element%
-{0:1405}}closed-\/database\endNode{}\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1406}}\Node%
-{\def\Element%
-{0:1407}}Notes\endNode{}\Node%
-{\def\Element%
-{0:1408}}None.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:DATABASE-NAME-FROM-SPEC}}\Node%
-{\def\Element%
-{0:1410}}\Node%
-{\def\Element%
-{0:1411}}DATABASE-\/NAME-\/FROM-\/SPEC\endNode{}\Node%
-{\def\Element%
-{0:1412}}Return the database name string corresponding to
- the given connection specification.\endNode{}\Node%
-{\def\Element%
-{0:1413}}Generic Function\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1414}}\Node%
-{\def\Element%
-{0:1415}}Syntax\endNode{}\Node%
-{\def\Element%
-{0:1416}} \Node%
-{\def\Element%
-{0:1417}}database-\/name-\/from-\/spec\endNode{} \Node%
-{\def\Element%
-{0:1418}}connection-\/spec\endNode{} \Node%
-{\def\Element%
-{0:1419}}database-\/type\endNode{} =>\/ \Node%
-{\def\Element%
-{0:1420}}name\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1421}}\Node%
-{\def\Element%
-{0:1422}}Arguments and Values\endNode{}\Node%
-{\def\Element%
-{0:1423}}\Node%
-{\def\Element%
-{0:1424}}\Node%
-{\def\Element%
-{0:1425}}\Node%
-{\def\Element%
-{0:1426}}connection-\/spec\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1427}}\Node%
-{\def\Element%
-{0:1428}}A connection specification, whose structure and
- interpretation are dependent on the
- \Node%
-{\def\Element%
-{0:1429}}database-\/type\endNode{}.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1430}}\Node%
-{\def\Element%
-{0:1431}}\Node%
-{\def\Element%
-{0:1432}}database-\/type\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1433}}\Node%
-{\def\Element%
-{0:1434}}A database type specifier, i.e. a keyword.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1435}}\Node%
-{\def\Element%
-{0:1436}}\Node%
-{\def\Element%
-{0:1437}}name\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1438}}\Node%
-{\def\Element%
-{0:1439}}A string denoting a database name.\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1440}}\Node%
-{\def\Element%
-{0:1441}}Description\endNode{}\Node%
-{\def\Element%
-{0:1442}}This generic function takes a connection specification
- and a database type and returns the database name of the
- database object that would be created had
- \Node%
-{\def\Element%
-{0:1443}}connect\endNode{} been called with the given
- connection specification and database types.\endNode{}\Node%
-{\def\Element%
-{0:1444}}This function is useful in determining a database name
- from the connection specification, since the way the
- connection specification is converted into a database name
- is dependent on the database type.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1445}}\Node%
-{\def\Element%
-{0:1446}}Examples\endNode{}\Node%
-{\def\Element%
-{0:1447}}(database-\/name-\/from-\/spec '("dent" "newesim" "dent" "dent") :mysql)
-=>\/ "dent/newesim/dent"
-(connect '("dent" "newesim" "dent" "dent") :database-\/type :mysql)
-=>\/ \#\Entity{lt}CLSQL-\/MYSQL:MYSQL-\/DATABASE \{48391DCD\}>\/
-(database-\/name *default-\/database*)
-=>\/ "dent/newesim/dent"
-
-(database-\/name-\/from-\/spec '(nil "template1" "dent" nil) :postgresql)
-=>\/ "/template1/dent"
-(connect '(nil "template1" "dent" nil) :database-\/type :postgresql)
-=>\/ \#\Entity{lt}CLSQL-\/POSTGRESQL:POSTGRESQL-\/DATABASE \{48392D2D\}>\/
-(database-\/name *default-\/database*)
-=>\/ "/template1/dent"
-
-(database-\/name-\/from-\/spec '("www.pmsf.de" "template1" "dent" nil) :postgresql)
-=>\/ "www.pmsf.de/template1/dent"
-
-(find-\/database "dent/newesim/dent")
-=>\/ \#\Entity{lt}CLSQL-\/MYSQL:MYSQL-\/DATABASE \{484E91C5\}>\/
-(find-\/database "/template1/dent")
-=>\/ \#\Entity{lt}CLSQL-\/POSTGRESQL:POSTGRESQL-\/DATABASE \{48392D2D\}>\/
-(find-\/database "www.pmsf.de/template1/dent" nil)
-=>\/ NIL
-(find-\/database **)
-=>\/ \#\Entity{lt}CLSQL-\/POSTGRESQL:POSTGRESQL-\/DATABASE \{48392D2D\}>\/
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1448}}\Node%
-{\def\Element%
-{0:1449}}Side Effects\endNode{}\Node%
-{\def\Element%
-{0:1450}}None.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1451}}\Node%
-{\def\Element%
-{0:1452}}Affected by\endNode{}\Node%
-{\def\Element%
-{0:1453}}None.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1454}}\Node%
-{\def\Element%
-{0:1455}}Exceptional Situations\endNode{}\Node%
-{\def\Element%
-{0:1456}}If the value of \Node%
-{\def\Element%
-{0:1457}}connection-\/spec\endNode{}
- is not a valid connection specification for the given
- database type, an error of type
- \Node%
-{\def\Element%
-{0:1458}}maisql-\/invalid-\/spec-\/error\endNode{} might be
- signalled.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1459}}\Node%
-{\def\Element%
-{0:1460}}See Also\endNode{}\Node%
-{\def\Element%
-{0:1461}} \Node%
-{\def\Element%
-{0:1462}}\Node%
-{\def\Element%
-{0:1463}}\Node%
-{\def\Element%
-{0:1464}}\Node%
-{\def\Element%
-{0:1465}}connect\endNode{}\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1466}}\Node%
-{\def\Element%
-{0:1467}}Notes\endNode{}\Node%
-{\def\Element%
-{0:1468}}None.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:EXECUTE-COMMAND}}\Node%
-{\def\Element%
-{0:1470}}\Node%
-{\def\Element%
-{0:1471}}EXECUTE-\/COMMAND\endNode{}\Node%
-{\def\Element%
-{0:1472}}Execute an SQL command which returns no
- values.\endNode{}\Node%
-{\def\Element%
-{0:1473}}Function\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1474}}\Node%
-{\def\Element%
-{0:1475}}Syntax\endNode{}\Node%
-{\def\Element%
-{0:1476}}\Node%
-{\def\Element%
-{0:1477}}execute-\/command\endNode{} \Node%
-{\def\Element%
-{0:1478}}sql-\/expression\endNode{} \Entity{amp}key \Node%
-{\def\Element%
-{0:1479}}database\endNode{} =>\/ \Node%
-{\def\Element%
-{0:1480}}t\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1481}}\Node%
-{\def\Element%
-{0:1482}}Arguments and Values\endNode{}\Node%
-{\def\Element%
-{0:1483}}\Node%
-{\def\Element%
-{0:1484}}\Node%
-{\def\Element%
-{0:1485}}\Node%
-{\def\Element%
-{0:1486}}sql-\/expression\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1487}}\Node%
-{\def\Element%
-{0:1488}}An \Node%
-{\def\Element%
-{0:1489}}sql
- expression\endNode{} that represents an SQL
- statement which will return no values.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1490}}\Node%
-{\def\Element%
-{0:1491}}\Node%
-{\def\Element%
-{0:1492}}database\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1493}}\Node%
-{\def\Element%
-{0:1494}}A
- \Node%
-{\def\Element%
-{0:1495}}database
- object\endNode{}. This will default to the value
- of \Node%
-{\def\Element%
-{0:1496}}*default-\/database*\endNode{}.\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1497}}\Node%
-{\def\Element%
-{0:1498}}Description\endNode{}\Node%
-{\def\Element%
-{0:1499}}This will execute the command given by
- \Node%
-{\def\Element%
-{0:1500}}sql-\/expression\endNode{} in the
- \Node%
-{\def\Element%
-{0:1501}}database\endNode{} specified. If the execution
- succeeds it will return \Node%
-{\def\Element%
-{0:1502}}t\endNode{}, otherwise an
- error of type \Node%
-{\def\Element%
-{0:1503}}maisql-\/sql-\/error\endNode{} will
- be signalled.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1504}}\Node%
-{\def\Element%
-{0:1505}}Examples\endNode{}\Node%
-{\def\Element%
-{0:1506}}(execute-\/command "create table eventlog (time char(30),event char(70))")
-=>\/ T
-
-(execute-\/command "create table eventlog (time char(30),event char(70))")
->\/>\/
->\/>\/ While accessing database \#\Entity{lt}CLSQL-\/POSTGRESQL:POSTGRESQL-\/DATABASE \{480B2B6D\}>\/
->\/>\/ with expression "create table eventlog (time char(30),event char(70))":
->\/>\/ Error NIL: ERROR: amcreate: eventlog relation already exists
->\/>\/ has occurred.
->\/>\/
->\/>\/ Restarts:
->\/>\/ 0: [ABORT] Return to Top-\/Level.
->\/>\/
->\/>\/ Debug (type H for help)
->\/>\/
->\/>\/ (CLSQL-\/POSTGRESQL::|(PCL::FAST-\/METHOD DATABASE-\/EXECUTE-\/COMMAND (T POSTGRESQL-\/DATABASE))|
->\/>\/ \#\Entity{lt}unused-\/arg>\/
->\/>\/ \#\Entity{lt}unused-\/arg>\/
->\/>\/ \#\Entity{lt}unavailable-\/arg>\/
->\/>\/ \#\Entity{lt}unavailable-\/arg>\/)
->\/>\/ Source: (ERROR 'CLSQL-\/SQL-\/ERROR :DATABASE DATABASE :EXPRESSION ...)
->\/>\/ 0] 0
-
-(execute-\/command "drop table eventlog")
-=>\/ T
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1507}}\Node%
-{\def\Element%
-{0:1508}}Side Effects\endNode{}\Node%
-{\def\Element%
-{0:1509}}Whatever effects the execution of the SQL statement has
- on the underlying database, if any.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1510}}\Node%
-{\def\Element%
-{0:1511}}Affected by\endNode{}\Node%
-{\def\Element%
-{0:1512}}None.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1513}}\Node%
-{\def\Element%
-{0:1514}}Exceptional Situations\endNode{}\Node%
-{\def\Element%
-{0:1515}}If the execution of the SQL statement leads to any
- errors, an error of type
- \Node%
-{\def\Element%
-{0:1516}}maisql-\/sql-\/error\endNode{} is signalled.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1517}}\Node%
-{\def\Element%
-{0:1518}}See Also\endNode{}\Node%
-{\def\Element%
-{0:1519}} \Node%
-{\def\Element%
-{0:1520}}\Node%
-{\def\Element%
-{0:1521}}\Node%
-{\def\Element%
-{0:1522}}\Node%
-{\def\Element%
-{0:1523}}query\endNode{}\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1524}}\Node%
-{\def\Element%
-{0:1525}}Notes\endNode{}\Node%
-{\def\Element%
-{0:1526}}None.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:QUERY}}\Node%
-{\def\Element%
-{0:1528}}\Node%
-{\def\Element%
-{0:1529}}QUERY\endNode{}\Node%
-{\def\Element%
-{0:1530}}Execute an SQL query and return the tuples as a
- list\endNode{}\Node%
-{\def\Element%
-{0:1531}}Function\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1532}}\Node%
-{\def\Element%
-{0:1533}}Syntax\endNode{}\Node%
-{\def\Element%
-{0:1534}}\Node%
-{\def\Element%
-{0:1535}}query\endNode{} \Node%
-{\def\Element%
-{0:1536}}query-\/expression\endNode{} \Entity{amp}key \Node%
-{\def\Element%
-{0:1537}}database\endNode{} \Node%
-{\def\Element%
-{0:1538}}types\endNode{} =>\/ \Node%
-{\def\Element%
-{0:1539}}result\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1540}}\Node%
-{\def\Element%
-{0:1541}}Arguments and Values\endNode{}\Node%
-{\def\Element%
-{0:1542}}\Node%
-{\def\Element%
-{0:1543}}\Node%
-{\def\Element%
-{0:1544}}\Node%
-{\def\Element%
-{0:1545}}query-\/expression\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1546}}\Node%
-{\def\Element%
-{0:1547}}An \Node%
-{\def\Element%
-{0:1548}}sql
- expression\endNode{} that represents an SQL
- query which is expected to return a (possibly empty)
- result set.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1549}}\Node%
-{\def\Element%
-{0:1550}}\Node%
-{\def\Element%
-{0:1551}}database\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1552}}\Node%
-{\def\Element%
-{0:1553}}A
- \Node%
-{\def\Element%
-{0:1554}}database
- object\endNode{}. This will default to the value
- of \Node%
-{\def\Element%
-{0:1555}}*default-\/database*\endNode{}.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1556}}\Node%
-{\def\Element%
-{0:1557}}\Node%
-{\def\Element%
-{0:1558}}types\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1559}}\Node%
-{\def\Element%
-{0:1560}}A
- \Node%
-{\def\Element%
-{0:1561}}field type
- specififier\endNode{}. The default is \Node%
-{\def\Element%
-{0:1562}}NIL\endNode{}.
- \endNode{}\Node%
-{\def\Element%
-{0:1563}} The purpose of this argument is cause \Node%
-{\def\Element%
-{0:1564}}\Node%
-{\def\Element%
-{0:1565}}CLSQL\endNode{}\endNode{} to
- import SQL numeric fields into numeric Lisp objects
- rather than strings. This reduces the cost of
- allocating a temporary string and the \Node%
-{\def\Element%
-{0:1566}}\Node%
-{\def\Element%
-{0:1567}}CLSQL\endNode{}\endNode{} users'
- inconvenience of converting number strings into number
- objects.
- \endNode{}\Node%
-{\def\Element%
-{0:1568}} A value of \Node%
-{\def\Element%
-{0:1569}}:auto\endNode{} causes \Node%
-{\def\Element%
-{0:1570}}\Node%
-{\def\Element%
-{0:1571}}CLSQL\endNode{}\endNode{}
- to automatically convert SQL fields into a
- numeric format where applicable. The default value of
- \Node%
-{\def\Element%
-{0:1572}}NIL\endNode{} causes all fields to be returned as strings
- regardless of the SQL type. Otherwise a list is expected
- which has a element for each field that specifies the
- conversion. If the list is shorter than the number
- of fields, the a value of \Node%
-{\def\Element%
-{0:1573}}t\endNode{} is
- assumed for the field. If the list is longer than
- the number of fields, the extra elements are
- ignored.
- \Node%
-{\def\Element%
-{0:1574}}\Node%
-{\def\Element%
-{0:1575}}\Node%
-{\def\Element%
-{0:1576}}:int\endNode{} Field is imported as a
- signed integer, from 8-\/bits to 64-\/bits depending
- upon the field type.
- \endNode{}\Node%
-{\def\Element%
-{0:1577}}\Node%
-{\def\Element%
-{0:1578}}:double\endNode{} Field is imported as a
- double-\/float number.
- \endNode{}\Node%
-{\def\Element%
-{0:1579}}\Node%
-{\def\Element%
-{0:1580}}t\endNode{} Field is imported as a
- string.
- \endNode{}\endNode{}
- \endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1581}}\Node%
-{\def\Element%
-{0:1582}}\Node%
-{\def\Element%
-{0:1583}}result\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1584}}\Node%
-{\def\Element%
-{0:1585}}A list representing the result set obtained. For
- each tuple in the result set, there is an element in
- this list, which is itself a list of all the attribute
- values in the tuple.\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1586}}\Node%
-{\def\Element%
-{0:1587}}Description\endNode{}\Node%
-{\def\Element%
-{0:1588}}This will execute the query given by
- \Node%
-{\def\Element%
-{0:1589}}query-\/expression\endNode{} in the
- \Node%
-{\def\Element%
-{0:1590}}database\endNode{} specified. If the execution
- succeeds it will return the result set returned by the
- database, otherwise an error of type
- \Node%
-{\def\Element%
-{0:1591}}maisql-\/sql-\/error\endNode{} will
- be signalled.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1592}}\Node%
-{\def\Element%
-{0:1593}}Examples\endNode{}\Node%
-{\def\Element%
-{0:1594}}(execute-\/command "create table simple (name char(50), salary numeric(10,2))")
-=>\/ T
-(execute-\/command "insert into simple values ('Mai, Pierre',10000)")
-=>\/ T
-(execute-\/command "insert into simple values ('Hacker, Random J.',8000.50)")
-=>\/ T
-(query "select * from simple")
-=>\/ (("Mai, Pierre" "10000.00") ("Hacker, Random J." "8000.50"))
-(query "select salary from simple")
-=>\/ (("10000.00") ("8000.50"))
-(query "select salary from simple where salary >\/ 10000")
-=>\/ NIL
-(query "select salary,name from simple where salary >\/ 10000")
-=>\/ NIL
-(query "select salary,name from simple where salary >\/ 9000")
-=>\/ (("10000.00" "Mai, Pierre"))
-(query "select salary,name from simple where salary >\/ 8000")
-=>\/ (("10000.00" "Mai, Pierre") ("8000.50" "Hacker, Random J."))
-
-;; MySQL-\/specific:
-(query "show tables")
-=>\/ (("demo") ("log") ("newlog") ("simple") ("spacetrial"))
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1595}}\Node%
-{\def\Element%
-{0:1596}}Side Effects\endNode{}\Node%
-{\def\Element%
-{0:1597}}Whatever effects the execution of the SQL query has
- on the underlying database, if any.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1598}}\Node%
-{\def\Element%
-{0:1599}}Affected by\endNode{}\Node%
-{\def\Element%
-{0:1600}}None.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1601}}\Node%
-{\def\Element%
-{0:1602}}Exceptional Situations\endNode{}\Node%
-{\def\Element%
-{0:1603}}If the execution of the SQL query leads to any
- errors, an error of type
- \Node%
-{\def\Element%
-{0:1604}}maisql-\/sql-\/error\endNode{} is signalled.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1605}}\Node%
-{\def\Element%
-{0:1606}}See Also\endNode{}\Node%
-{\def\Element%
-{0:1607}} \Node%
-{\def\Element%
-{0:1608}}\Node%
-{\def\Element%
-{0:1609}}\Node%
-{\def\Element%
-{0:1610}}\Node%
-{\def\Element%
-{0:1611}}execute-\/command\endNode{}\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1612}}\Node%
-{\def\Element%
-{0:1613}}Notes\endNode{}\Node%
-{\def\Element%
-{0:1614}}None.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:MAP-QUERY}}\Node%
-{\def\Element%
-{0:1616}}\Node%
-{\def\Element%
-{0:1617}}MAP-\/QUERY\endNode{}\Node%
-{\def\Element%
-{0:1618}}Map a function over all the tuples from a
- query\endNode{}\Node%
-{\def\Element%
-{0:1619}}Function\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1620}}\Node%
-{\def\Element%
-{0:1621}}Syntax\endNode{}\Node%
-{\def\Element%
-{0:1622}}\Node%
-{\def\Element%
-{0:1623}}map-\/query\endNode{} \Node%
-{\def\Element%
-{0:1624}}output-\/type-\/spec\endNode{} \Node%
-{\def\Element%
-{0:1625}}function\endNode{} \Node%
-{\def\Element%
-{0:1626}}query-\/expression\endNode{} \Entity{amp}key \Node%
-{\def\Element%
-{0:1627}}database\endNode{} \Node%
-{\def\Element%
-{0:1628}}types\endNode{} =>\/ \Node%
-{\def\Element%
-{0:1629}}result\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1630}}\Node%
-{\def\Element%
-{0:1631}}Arguments and Values\endNode{}\Node%
-{\def\Element%
-{0:1632}}\Node%
-{\def\Element%
-{0:1633}}\Node%
-{\def\Element%
-{0:1634}}\Node%
-{\def\Element%
-{0:1635}}output-\/type-\/spec\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1636}}\Node%
-{\def\Element%
-{0:1637}}A sequence type specifier or \Node%
-{\def\Element%
-{0:1638}}nil\endNode{}.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1639}}\Node%
-{\def\Element%
-{0:1640}}\Node%
-{\def\Element%
-{0:1641}}function\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1642}}\Node%
-{\def\Element%
-{0:1643}}A function designator.
- \Node%
-{\def\Element%
-{0:1644}}function\endNode{} must take as many
- arguments as are attributes in the result set returned
- by executing the SQL
- \Node%
-{\def\Element%
-{0:1645}}query-\/expression\endNode{}.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1646}}\Node%
-{\def\Element%
-{0:1647}}\Node%
-{\def\Element%
-{0:1648}}query-\/expression\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1649}}\Node%
-{\def\Element%
-{0:1650}}An \Node%
-{\def\Element%
-{0:1651}}sql
- expression\endNode{} that represents an SQL
- query which is expected to return a (possibly empty)
- result set, where each tuple has as many attributes as
- \Node%
-{\def\Element%
-{0:1652}}function\endNode{} takes arguments.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1653}}\Node%
-{\def\Element%
-{0:1654}}\Node%
-{\def\Element%
-{0:1655}}database\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1656}}\Node%
-{\def\Element%
-{0:1657}}A
- \Node%
-{\def\Element%
-{0:1658}}database
- object\endNode{}. This will default to the value
- of \Node%
-{\def\Element%
-{0:1659}}*default-\/database*\endNode{}.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1660}}\Node%
-{\def\Element%
-{0:1661}}\Node%
-{\def\Element%
-{0:1662}}types\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1663}}\Node%
-{\def\Element%
-{0:1664}} A \Node%
-{\def\Element%
-{0:1665}}field type specififier\endNode{}.
- The default is \Node%
-{\def\Element%
-{0:1666}}NIL\endNode{}. See \Node%
-{\def\Element%
-{0:1667}}\Node%
-{\def\Element%
-{0:1668}}query\endNode{}\endNode{}
- for the semantics of this argument.
- \endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1669}}\Node%
-{\def\Element%
-{0:1670}}\Node%
-{\def\Element%
-{0:1671}}result\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1672}}\Node%
-{\def\Element%
-{0:1673}}If \Node%
-{\def\Element%
-{0:1674}}output-\/type-\/spec\endNode{} is a
- type specifier other than \Node%
-{\def\Element%
-{0:1675}}nil\endNode{}, then a
- sequence of the type it denotes. Otherwise
- \Node%
-{\def\Element%
-{0:1676}}nil\endNode{} is returned.\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1677}}\Node%
-{\def\Element%
-{0:1678}}Description\endNode{}\Node%
-{\def\Element%
-{0:1679}}Applies \Node%
-{\def\Element%
-{0:1680}}function\endNode{} to the
- attributes of successive tuples in the result set returned
- by executing the SQL
- \Node%
-{\def\Element%
-{0:1681}}query-\/expression\endNode{}. If the
- \Node%
-{\def\Element%
-{0:1682}}output-\/type-\/spec\endNode{} is
- \Node%
-{\def\Element%
-{0:1683}}nil\endNode{}, then the result of each application
- of \Node%
-{\def\Element%
-{0:1684}}function\endNode{} is discarded, and
- \Node%
-{\def\Element%
-{0:1685}}map-\/query\endNode{} returns
- \Node%
-{\def\Element%
-{0:1686}}nil\endNode{}. Otherwise the result of each
- successive application of \Node%
-{\def\Element%
-{0:1687}}function\endNode{} is
- collected in a sequence of type
- \Node%
-{\def\Element%
-{0:1688}}output-\/type-\/spec\endNode{}, where the jths
- element is the result of applying
- \Node%
-{\def\Element%
-{0:1689}}function\endNode{} to the attributes of the
- jths tuple in the result set. The collected sequence is the
- result of the call to \Node%
-{\def\Element%
-{0:1690}}map-\/query\endNode{}.
- \endNode{}\Node%
-{\def\Element%
-{0:1691}}If the \Node%
-{\def\Element%
-{0:1692}}output-\/type-\/spec\endNode{} is a
- subtype of \Node%
-{\def\Element%
-{0:1693}}list\endNode{}, the result will be a
- \Node%
-{\def\Element%
-{0:1694}}list\endNode{}.\endNode{}\Node%
-{\def\Element%
-{0:1695}}If the \Node%
-{\def\Element%
-{0:1696}}result-\/type\endNode{} is a subtype
- of \Node%
-{\def\Element%
-{0:1697}}vector\endNode{}, then if the implementation can
- determine the element type specified for the
- \Node%
-{\def\Element%
-{0:1698}}result-\/type\endNode{}, the element type of the
- resulting array is the result of
- \Node%
-{\def\Element%
-{0:1699}}upgrading\endNode{} that element type; or, if the
- implementation can determine that the element type is
- unspecified (or \Node%
-{\def\Element%
-{0:1700}}*\endNode{}), the element type of the
- resulting array is \Node%
-{\def\Element%
-{0:1701}}t\endNode{}; otherwise, an error is
- signaled.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1702}}\Node%
-{\def\Element%
-{0:1703}}Examples\endNode{}\Node%
-{\def\Element%
-{0:1704}}(map-\/query 'list \#'(lambda (salary name)
- (declare (ignorable name))
- (read-\/from-\/string salary))
- "select salary,name from simple where salary >\/ 8000")
-=>\/ (10000.0 8000.5)
-
-(map-\/query '(vector double-\/float)
- \#'(lambda (salary name)
- (declare (ignorable name))
- (let ((*read-\/default-\/float-\/format* 'double-\/float))
- (coerce (read-\/from-\/string salary) 'double-\/float))
- "select salary,name from simple where salary >\/ 8000"))
-=>\/ \#(10000.0d0 8000.5d0)
-(type-\/of *)
-=>\/ (SIMPLE-\/ARRAY DOUBLE-\/FLOAT (2))
-
-(let (list)
- (values (map-\/query nil \#'(lambda (salary name)
- (push (cons name (read-\/from-\/string salary)) list))
- "select salary,name from simple where salary >\/ 8000")
- list))
-=>\/ NIL
-=>\/ (("Hacker, Random J." . 8000.5) ("Mai, Pierre" . 10000.0))
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1705}}\Node%
-{\def\Element%
-{0:1706}}Side Effects\endNode{}\Node%
-{\def\Element%
-{0:1707}}Whatever effects the execution of the SQL query has
- on the underlying database, if any.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1708}}\Node%
-{\def\Element%
-{0:1709}}Affected by\endNode{}\Node%
-{\def\Element%
-{0:1710}}None.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1711}}\Node%
-{\def\Element%
-{0:1712}}Exceptional Situations\endNode{}\Node%
-{\def\Element%
-{0:1713}}If the execution of the SQL query leads to any
- errors, an error of type
- \Node%
-{\def\Element%
-{0:1714}}maisql-\/sql-\/error\endNode{} is signalled.\endNode{}\Node%
-{\def\Element%
-{0:1715}}An error of type \Node%
-{\def\Element%
-{0:1716}}type-\/error\endNode{} must
- be signaled if the \Node%
-{\def\Element%
-{0:1717}}output-\/type-\/spec\endNode{} is
- not a recognizable subtype of \Node%
-{\def\Element%
-{0:1718}}list\endNode{}, not a
- recognizable subtype of \Node%
-{\def\Element%
-{0:1719}}vector\endNode{}, and not
- \Node%
-{\def\Element%
-{0:1720}}nil\endNode{}.\endNode{}\Node%
-{\def\Element%
-{0:1721}}An error of type \Node%
-{\def\Element%
-{0:1722}}type-\/error\endNode{}
- should be signaled if
- \Node%
-{\def\Element%
-{0:1723}}output-\/type-\/spec\endNode{} specifies the number
- of elements and the size of the result set is different from
- that number.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1724}}\Node%
-{\def\Element%
-{0:1725}}See Also\endNode{}\Node%
-{\def\Element%
-{0:1726}} \Node%
-{\def\Element%
-{0:1727}}\Node%
-{\def\Element%
-{0:1728}}\Node%
-{\def\Element%
-{0:1729}}\Node%
-{\def\Element%
-{0:1730}}query\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1731}}\Node%
-{\def\Element%
-{0:1732}}\Node%
-{\def\Element%
-{0:1733}}do-\/query\endNode{}\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1734}}\Node%
-{\def\Element%
-{0:1735}}Notes\endNode{}\Node%
-{\def\Element%
-{0:1736}}None.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:DO-QUERY}}\Node%
-{\def\Element%
-{0:1738}}\Node%
-{\def\Element%
-{0:1739}}DO-\/QUERY\endNode{}\Node%
-{\def\Element%
-{0:1740}}Iterate over all the tuples of a
- query\endNode{}\Node%
-{\def\Element%
-{0:1741}}Macro\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1742}}\Node%
-{\def\Element%
-{0:1743}}Syntax\endNode{}\Node%
-{\def\Element%
-{0:1744}}\Node%
-{\def\Element%
-{0:1745}}do-\/query\endNode{} ((\Entity{amp}rest \Node%
-{\def\Element%
-{0:1746}}args\endNode{}) \Node%
-{\def\Element%
-{0:1747}}query-\/expression\endNode{} \Entity{amp}key \Node%
-{\def\Element%
-{0:1748}}database\endNode{} \Node%
-{\def\Element%
-{0:1749}}types\endNode{}) \Entity{amp}body \Node%
-{\def\Element%
-{0:1750}}body\endNode{} =>\/ \Node%
-{\def\Element%
-{0:1751}}nil\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1752}}\Node%
-{\def\Element%
-{0:1753}}Arguments and Values\endNode{}\Node%
-{\def\Element%
-{0:1754}}\Node%
-{\def\Element%
-{0:1755}}\Node%
-{\def\Element%
-{0:1756}}\Node%
-{\def\Element%
-{0:1757}}args\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1758}}\Node%
-{\def\Element%
-{0:1759}}A list of variable names.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1760}}\Node%
-{\def\Element%
-{0:1761}}\Node%
-{\def\Element%
-{0:1762}}query-\/expression\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1763}}\Node%
-{\def\Element%
-{0:1764}}An \Node%
-{\def\Element%
-{0:1765}}sql
- expression\endNode{} that represents an SQL
- query which is expected to return a (possibly empty)
- result set, where each tuple has as many attributes as
- \Node%
-{\def\Element%
-{0:1766}}function\endNode{} takes arguments.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1767}}\Node%
-{\def\Element%
-{0:1768}}\Node%
-{\def\Element%
-{0:1769}}database\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1770}}\Node%
-{\def\Element%
-{0:1771}}A
- \Node%
-{\def\Element%
-{0:1772}}database
- object\endNode{}. This will default to
- \Node%
-{\def\Element%
-{0:1773}}*default-\/database*\endNode{}.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1774}}\Node%
-{\def\Element%
-{0:1775}}\Node%
-{\def\Element%
-{0:1776}}types\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1777}}\Node%
-{\def\Element%
-{0:1778}} A \Node%
-{\def\Element%
-{0:1779}}field type specififier\endNode{}.
- The default is \Node%
-{\def\Element%
-{0:1780}}NIL\endNode{}. See \Node%
-{\def\Element%
-{0:1781}}\Node%
-{\def\Element%
-{0:1782}}query\endNode{}\endNode{}
- for the semantics of this argument.
- \endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1783}}\Node%
-{\def\Element%
-{0:1784}}\Node%
-{\def\Element%
-{0:1785}}body\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1786}}\Node%
-{\def\Element%
-{0:1787}}A body of Lisp code, like in a
- \Node%
-{\def\Element%
-{0:1788}}destructuring-\/bind\endNode{} form.\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1789}}\Node%
-{\def\Element%
-{0:1790}}Description\endNode{}\Node%
-{\def\Element%
-{0:1791}}Executes the \Node%
-{\def\Element%
-{0:1792}}body\endNode{} of code
- repeatedly with the variable names in
- \Node%
-{\def\Element%
-{0:1793}}args\endNode{} bound to the attributes of each
- tuple in the result set returned by executing the SQL
- \Node%
-{\def\Element%
-{0:1794}}query-\/expression\endNode{} on the
- \Node%
-{\def\Element%
-{0:1795}}database\endNode{} specified.\endNode{}\Node%
-{\def\Element%
-{0:1796}}The body of code is executed in a block named
- \Node%
-{\def\Element%
-{0:1797}}nil\endNode{} which may be returned from prematurely
- via \Node%
-{\def\Element%
-{0:1798}}return\endNode{} or
- \Node%
-{\def\Element%
-{0:1799}}return-\/from\endNode{}. In this case the result
- of evaluating the \Node%
-{\def\Element%
-{0:1800}}do-\/query\endNode{} form will be
- the one supplied to \Node%
-{\def\Element%
-{0:1801}}return\endNode{} or
- \Node%
-{\def\Element%
-{0:1802}}return-\/from\endNode{}. Otherwise the result will
- be \Node%
-{\def\Element%
-{0:1803}}nil\endNode{}.\endNode{}\Node%
-{\def\Element%
-{0:1804}}The body of code appears also is if wrapped in a
- \Node%
-{\def\Element%
-{0:1805}}destructuring-\/bind\endNode{} form, thus allowing
- declarations at the start of the body, especially those
- pertaining to the bindings of the variables named in
- \Node%
-{\def\Element%
-{0:1806}}args\endNode{}.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1807}}\Node%
-{\def\Element%
-{0:1808}}Examples\endNode{}\Node%
-{\def\Element%
-{0:1809}}(do-\/query ((salary name) "select salary,name from simple")
- (format t "\char126{}30A gets \$\char126{}2,5\$\char126{}\%" name (read-\/from-\/string salary)))
->\/>\/ Mai, Pierre gets \$10000.00
->\/>\/ Hacker, Random J. gets \$08000.50
-=>\/ NIL
-
-(do-\/query ((salary name) "select salary,name from simple")
- (return (cons salary name)))
-=>\/ ("10000.00" . "Mai, Pierre")
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1810}}\Node%
-{\def\Element%
-{0:1811}}Side Effects\endNode{}\Node%
-{\def\Element%
-{0:1812}}Whatever effects the execution of the SQL query has
- on the underlying database, if any.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1813}}\Node%
-{\def\Element%
-{0:1814}}Affected by\endNode{}\Node%
-{\def\Element%
-{0:1815}}None.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1816}}\Node%
-{\def\Element%
-{0:1817}}Exceptional Situations\endNode{}\Node%
-{\def\Element%
-{0:1818}}If the execution of the SQL query leads to any
- errors, an error of type
- \Node%
-{\def\Element%
-{0:1819}}maisql-\/sql-\/error\endNode{} is signalled.\endNode{}\Node%
-{\def\Element%
-{0:1820}}If the number of variable names in
- \Node%
-{\def\Element%
-{0:1821}}args\endNode{} and the number of attributes in
- the tuples in the result set don't match up, an error is
- signalled.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1822}}\Node%
-{\def\Element%
-{0:1823}}See Also\endNode{}\Node%
-{\def\Element%
-{0:1824}} \Node%
-{\def\Element%
-{0:1825}}\Node%
-{\def\Element%
-{0:1826}}\Node%
-{\def\Element%
-{0:1827}}\Node%
-{\def\Element%
-{0:1828}}query\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1829}}\Node%
-{\def\Element%
-{0:1830}}\Node%
-{\def\Element%
-{0:1831}}map-\/query\endNode{}\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1832}}\Node%
-{\def\Element%
-{0:1833}}Notes\endNode{}\Node%
-{\def\Element%
-{0:1834}}None.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:LOOP-TUPLES}}\Node%
-{\def\Element%
-{0:1836}}\Node%
-{\def\Element%
-{0:1837}}LOOP-\/FOR-\/AS-\/TUPLES\endNode{}\Node%
-{\def\Element%
-{0:1838}}Iterate over all the tuples of a
- query via a loop clause\endNode{}\Node%
-{\def\Element%
-{0:1839}}Loop Clause\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1840}}\Node%
-{\def\Element%
-{0:1841}}Compatibility\endNode{}\Node%
-{\def\Element%
-{0:1842}}\Node%
-{\def\Element%
-{0:1843}}\Node%
-{\def\Element%
-{0:1844}}loop-\/for-\/as-\/tuples\endNode{} only works with \Node%
-{\def\Element%
-{0:1845}}CMUCL\endNode{}.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1846}}\Node%
-{\def\Element%
-{0:1847}}Syntax\endNode{}\Node%
-{\def\Element%
-{0:1848}}\Node%
-{\def\Element%
-{0:1849}}var\endNode{} [\Node%
-{\def\Element%
-{0:1850}}type-\/spec\endNode{}] being \{each | the\} \{record | records | tuple | tuples\} \{in | of\} \Node%
-{\def\Element%
-{0:1851}}query\endNode{} [from \Node%
-{\def\Element%
-{0:1852}}database\endNode{}]\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1853}}\Node%
-{\def\Element%
-{0:1854}}Arguments and Values\endNode{}\Node%
-{\def\Element%
-{0:1855}}\Node%
-{\def\Element%
-{0:1856}}\Node%
-{\def\Element%
-{0:1857}}\Node%
-{\def\Element%
-{0:1858}}var\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1859}}\Node%
-{\def\Element%
-{0:1860}}A \Node%
-{\def\Element%
-{0:1861}}d-\/var-\/spec\endNode{}, as defined in the
- grammar for \Node%
-{\def\Element%
-{0:1862}}loop\endNode{}-\/clauses in the
- ANSI Standard for Common Lisp. This allows for the
- usual loop-\/style destructuring.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1863}}\Node%
-{\def\Element%
-{0:1864}}\Node%
-{\def\Element%
-{0:1865}}type-\/spec\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1866}}\Node%
-{\def\Element%
-{0:1867}}An optional \Node%
-{\def\Element%
-{0:1868}}type-\/spec\endNode{} either
- simple or destructured, as defined in the grammar for
- \Node%
-{\def\Element%
-{0:1869}}loop\endNode{}-\/clauses in the ANSI Standard
- for Common Lisp.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1870}}\Node%
-{\def\Element%
-{0:1871}}\Node%
-{\def\Element%
-{0:1872}}query\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1873}}\Node%
-{\def\Element%
-{0:1874}}An \Node%
-{\def\Element%
-{0:1875}}sql
- expression\endNode{} that represents an SQL
- query which is expected to return a (possibly empty)
- result set, where each tuple has as many attributes as
- \Node%
-{\def\Element%
-{0:1876}}function\endNode{} takes arguments.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1877}}\Node%
-{\def\Element%
-{0:1878}}\Node%
-{\def\Element%
-{0:1879}}database\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1880}}\Node%
-{\def\Element%
-{0:1881}}An optional
- \Node%
-{\def\Element%
-{0:1882}}database
- object\endNode{}. This will default to the value
- of \Node%
-{\def\Element%
-{0:1883}}*default-\/database*\endNode{}.\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1884}}\Node%
-{\def\Element%
-{0:1885}}Description\endNode{}\Node%
-{\def\Element%
-{0:1886}}This clause is an iteration driver for
- \Node%
-{\def\Element%
-{0:1887}}loop\endNode{}, that binds the given variable
- (possibly destructured) to the consecutive tuples (which are
- represented as lists of attribute values) in the result set
- returned by executing the SQL \Node%
-{\def\Element%
-{0:1888}}query\endNode{}
- expression on the \Node%
-{\def\Element%
-{0:1889}}database\endNode{}
- specified.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1890}}\Node%
-{\def\Element%
-{0:1891}}Examples\endNode{}\Node%
-{\def\Element%
-{0:1892}}(defvar *my-\/db* (connect '("dent" "newesim" "dent" "dent"))
- "My database"
-=>\/ *MY-\/DB*
-(loop with time-\/graph = (make-\/hash-\/table :test \#'equal)
- with event-\/graph = (make-\/hash-\/table :test \#'equal)
- for (time event) being the tuples of "select time,event from log"
- from *my-\/db*
- do
- (incf (gethash time time-\/graph 0))
- (incf (gethash event event-\/graph 0))
- finally
- (flet ((show-\/graph (k v) (format t "\char126{}40A =>\/ \char126{}5D\char126{}\%" k v)))
- (format t "\char126{}\Entity{amp}Time-\/Graph:\char126{}\%===========\char126{}\%")
- (maphash \#'show-\/graph time-\/graph)
- (format t "\char126{}\Entity{amp}\char126{}\%Event-\/Graph:\char126{}\%============\char126{}\%")
- (maphash \#'show-\/graph event-\/graph))
- (return (values time-\/graph event-\/graph)))
->\/>\/ Time-\/Graph:
->\/>\/ ===========
->\/>\/ D =>\/ 53000
->\/>\/ X =>\/ 3
->\/>\/ test-\/me =>\/ 3000
->\/>\/
->\/>\/ Event-\/Graph:
->\/>\/ ============
->\/>\/ CLOS Benchmark entry. =>\/ 9000
->\/>\/ Demo Text... =>\/ 3
->\/>\/ doit-\/text =>\/ 3000
->\/>\/ C Benchmark entry. =>\/ 12000
->\/>\/ CLOS Benchmark entry =>\/ 32000
-=>\/ \#\Entity{lt}EQUAL hash table, 3 entries \{48350A1D\}>\/
-=>\/ \#\Entity{lt}EQUAL hash table, 5 entries \{48350FCD\}>\/
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1893}}\Node%
-{\def\Element%
-{0:1894}}Side Effects\endNode{}\Node%
-{\def\Element%
-{0:1895}}Whatever effects the execution of the SQL query has
- on the underlying database, if any.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1896}}\Node%
-{\def\Element%
-{0:1897}}Affected by\endNode{}\Node%
-{\def\Element%
-{0:1898}}None.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1899}}\Node%
-{\def\Element%
-{0:1900}}Exceptional Situations\endNode{}\Node%
-{\def\Element%
-{0:1901}}If the execution of the SQL query leads to any
- errors, an error of type
- \Node%
-{\def\Element%
-{0:1902}}maisql-\/sql-\/error\endNode{} is signalled.\endNode{}\Node%
-{\def\Element%
-{0:1903}}Otherwise, any of the exceptional situations of
- \Node%
-{\def\Element%
-{0:1904}}loop\endNode{} applies.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1905}}\Node%
-{\def\Element%
-{0:1906}}See Also\endNode{}\Node%
-{\def\Element%
-{0:1907}} \Node%
-{\def\Element%
-{0:1908}}\Node%
-{\def\Element%
-{0:1909}}\Node%
-{\def\Element%
-{0:1910}}\Node%
-{\def\Element%
-{0:1911}}query\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1912}}\Node%
-{\def\Element%
-{0:1913}}\Node%
-{\def\Element%
-{0:1914}}map-\/query\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1915}}\Node%
-{\def\Element%
-{0:1916}}\Node%
-{\def\Element%
-{0:1917}}do-\/query\endNode{}\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1918}}\Node%
-{\def\Element%
-{0:1919}}Notes\endNode{}\Node%
-{\def\Element%
-{0:1920}}None.\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1921}}\Node%
-{\def\Element%
-{0:1922}}\Node%
-{\def\Element%
-{0:1923}}CLSQL-\/SYS\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1924}}\Node%
-{\def\Element%
-{0:1925}}This part gives a reference to all the symbols exported
- from the package \Node%
-{\def\Element%
-{0:1926}}CLSQL-\/SYS\endNode{}, which are not also
- exported from \Node%
-{\def\Element%
-{0:1927}}CLSQL\endNode{}. These symbols are part of
- the interface for database back-\/ends, but not part of the normal
- user-\/interface of \Node%
-{\def\Element%
-{0:1928}}\Node%
-{\def\Element%
-{0:1929}}CLSQL\endNode{}\endNode{}.\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:DATABASE-INITIALIZE-DATABASE-TYPE}}\Node%
-{\def\Element%
-{0:1931}}\Node%
-{\def\Element%
-{0:1932}}DATABASE-\/INITIALIZE-\/DATABASE-\/TYPE\endNode{}\Node%
-{\def\Element%
-{0:1933}}Back-\/end part of \Node%
-{\def\Element%
-{0:1934}}\Node%
-{\def\Element%
-{0:1935}}initialize-\/database-\/type\endNode{}\endNode{}.\endNode{}\Node%
-{\def\Element%
-{0:1936}}Generic Function\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1937}}\Node%
-{\def\Element%
-{0:1938}}Syntax\endNode{}\Node%
-{\def\Element%
-{0:1939}}\Node%
-{\def\Element%
-{0:1940}}database-\/initialize-\/database-\/type\endNode{} \Node%
-{\def\Element%
-{0:1941}}database-\/type\endNode{} =>\/ \Node%
-{\def\Element%
-{0:1942}}result\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1943}}\Node%
-{\def\Element%
-{0:1944}}Arguments and Values\endNode{}\Node%
-{\def\Element%
-{0:1945}}\Node%
-{\def\Element%
-{0:1946}}\Node%
-{\def\Element%
-{0:1947}}\Node%
-{\def\Element%
-{0:1948}}database-\/type\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1949}}\Node%
-{\def\Element%
-{0:1950}}A keyword indicating the database type to
- initialize.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1951}}\Node%
-{\def\Element%
-{0:1952}}\Node%
-{\def\Element%
-{0:1953}}result\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1954}}\Node%
-{\def\Element%
-{0:1955}}Either \Node%
-{\def\Element%
-{0:1956}}t\endNode{} if the initialization
- succeeds or \Node%
-{\def\Element%
-{0:1957}}nil\endNode{} if it fails.\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1958}}\Node%
-{\def\Element%
-{0:1959}}Description\endNode{}\Node%
-{\def\Element%
-{0:1960}}This generic function implements the main part of the
- database type initialization performed by
- \Node%
-{\def\Element%
-{0:1961}}initialize-\/database-\/type\endNode{}. After
- \Node%
-{\def\Element%
-{0:1962}}initialize-\/database-\/type\endNode{} has checked
- that the given database type has not been initialized
- before, as indicated by
- \Node%
-{\def\Element%
-{0:1963}}*initialized-\/database-\/types*\endNode{}, it will call
- this function with the database type as it's sole
- parameter. Database back-\/ends are required to define a
- method on this generic function which is specialized via an
- eql-\/specializer to the keyword representing their database
- type.\endNode{}\Node%
-{\def\Element%
-{0:1964}}Database back-\/ends shall indicate successful
- initialization by returning \Node%
-{\def\Element%
-{0:1965}}t\endNode{} from their
- method, and \Node%
-{\def\Element%
-{0:1966}}nil\endNode{} otherwise. Methods for
- this generic function are allowed to signal errors of type
- \Node%
-{\def\Element%
-{0:1967}}maisql-\/error\endNode{} or subtypes thereof.
- They may also signal other types of conditions, if
- appropriate, but have to document this.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1968}}\Node%
-{\def\Element%
-{0:1969}}Examples\endNode{}\Node%
-{\def\Element%
-{0:1970}}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1971}}\Node%
-{\def\Element%
-{0:1972}}Side Effects\endNode{}\Node%
-{\def\Element%
-{0:1973}}All necessary side effects to initialize the database
- instance.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1974}}\Node%
-{\def\Element%
-{0:1975}}Affected By\endNode{}\Node%
-{\def\Element%
-{0:1976}}None.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1977}}\Node%
-{\def\Element%
-{0:1978}}Exceptional Situations\endNode{}\Node%
-{\def\Element%
-{0:1979}}Conditions of type \Node%
-{\def\Element%
-{0:1980}}maisql-\/error\endNode{}
- or other conditions may be signalled, depending on the
- database back-\/end.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1981}}\Node%
-{\def\Element%
-{0:1982}}See Also\endNode{}\Node%
-{\def\Element%
-{0:1983}} \Node%
-{\def\Element%
-{0:1984}}\Node%
-{\def\Element%
-{0:1985}}\Node%
-{\def\Element%
-{0:1986}}\Node%
-{\def\Element%
-{0:1987}}initialize-\/database-\/type\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1988}}\Node%
-{\def\Element%
-{0:1989}}\Node%
-{\def\Element%
-{0:1990}}*initialized-\/database-\/types*\endNode{}\endNode{}\endNode{}\endNode{}
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1991}}\Node%
-{\def\Element%
-{0:1992}}Notes\endNode{}\Node%
-{\def\Element%
-{0:1993}}None.\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:1994}}\Node%
-{\def\Element%
-{0:1995}}Database Back-\/ends\endNode{}\Node%
-{\def\Element%
-{0:1996}}\Node%
-{\def\Element%
-{0:1997}}MySQL\endNode{}\Node%
-{\def\Element%
-{0:1998}}\Node%
-{\def\Element%
-{0:1999}}Libraries\endNode{}\Node%
-{\def\Element%
-{0:2000}}The MySQL back-\/end needs access to the MySQL C
- client library (\Node%
-{\def\Element%
-{0:2001}}libmysqlclient.so\endNode{}).
- The location of this library is specified via
- \Node%
-{\def\Element%
-{0:2002}}*mysql-\/so-\/load-\/path*\endNode{}, which defaults
- to \Node%
-{\def\Element%
-{0:2003}}/usr/lib/libmysqlclient.so\endNode{}.
- Additional flags to \Node%
-{\def\Element%
-{0:2004}}ld\endNode{} needed for
- linking are specified via
- \Node%
-{\def\Element%
-{0:2005}}*mysql-\/so-\/libraries*\endNode{},
- which defaults to \Node%
-{\def\Element%
-{0:2006}}("-\/lc")\endNode{}.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2007}}\Node%
-{\def\Element%
-{0:2008}}Initialization\endNode{}\Node%
-{\def\Element%
-{0:2009}}Use
- \Node%
-{\def\Element%
-{0:2010}}(mk:load-\/system :clsql-\/mysql)\endNode{}
- to load the MySQL back-\/end. The database type for the MySQL
- back-\/end is \Node%
-{\def\Element%
-{0:2011}}:mysql\endNode{}.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2012}}\Node%
-{\def\Element%
-{0:2013}}Connection Specification\endNode{}\Node%
-{\def\Element%
-{0:2014}}\Node%
-{\def\Element%
-{0:2015}}Syntax of connection-\/spec\endNode{}\Node%
-{\def\Element%
-{0:2016}}(\Node%
-{\def\Element%
-{0:2017}}host\endNode{} \Node%
-{\def\Element%
-{0:2018}}db\endNode{} \Node%
-{\def\Element%
-{0:2019}}user\endNode{} \Node%
-{\def\Element%
-{0:2020}}password\endNode{})\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2021}}\Node%
-{\def\Element%
-{0:2022}}Description of connection-\/spec\endNode{}\Node%
-{\def\Element%
-{0:2023}}\Node%
-{\def\Element%
-{0:2024}}\Node%
-{\def\Element%
-{0:2025}}\Node%
-{\def\Element%
-{0:2026}}host\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2027}}\Node%
-{\def\Element%
-{0:2028}}String representing the hostname or IP address
- the MySQL server resides on, or \Node%
-{\def\Element%
-{0:2029}}nil\endNode{}
- to indicate the localhost.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2030}}\Node%
-{\def\Element%
-{0:2031}}\Node%
-{\def\Element%
-{0:2032}}db\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2033}}\Node%
-{\def\Element%
-{0:2034}}String representing the name of the database on
- the server to connect to.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2035}}\Node%
-{\def\Element%
-{0:2036}}\Node%
-{\def\Element%
-{0:2037}}user\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2038}}\Node%
-{\def\Element%
-{0:2039}}String representing the user name to use for
- authentication, or \Node%
-{\def\Element%
-{0:2040}}nil\endNode{} to use the
- current Unix user ID.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2041}}\Node%
-{\def\Element%
-{0:2042}}\Node%
-{\def\Element%
-{0:2043}}password\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2044}}\Node%
-{\def\Element%
-{0:2045}}String representing the unencrypted password to
- use for authentication, or \Node%
-{\def\Element%
-{0:2046}}nil\endNode{} if
- the authentication record has an empty password
- field.\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2047}}\Node%
-{\def\Element%
-{0:2048}}AODBC\endNode{}\Node%
-{\def\Element%
-{0:2049}}\Node%
-{\def\Element%
-{0:2050}}Libraries\endNode{}\Node%
-{\def\Element%
-{0:2051}}The AODBC back-\/end requires access to the ODBC interface
- of \Node%
-{\def\Element%
-{0:2052}}AllegroCL\endNode{}.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2053}}\Node%
-{\def\Element%
-{0:2054}}Initialization\endNode{}\Node%
-{\def\Element%
-{0:2055}}Use
- \Node%
-{\def\Element%
-{0:2056}}(mk:load-\/system :clsql-\/aodbc)\endNode{}
- to load the MySQL back-\/end. The database type for the AODBC
- back-\/end is \Node%
-{\def\Element%
-{0:2057}}:aodbc\endNode{}.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2058}}\Node%
-{\def\Element%
-{0:2059}}Connection Specification\endNode{}\Node%
-{\def\Element%
-{0:2060}}\Node%
-{\def\Element%
-{0:2061}}Syntax of connection-\/spec\endNode{}\Node%
-{\def\Element%
-{0:2062}}(\Node%
-{\def\Element%
-{0:2063}}dsn\endNode{} \Node%
-{\def\Element%
-{0:2064}}user\endNode{} \Node%
-{\def\Element%
-{0:2065}}password\endNode{})\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2066}}\Node%
-{\def\Element%
-{0:2067}}Description of connection-\/spec\endNode{}\Node%
-{\def\Element%
-{0:2068}}\Node%
-{\def\Element%
-{0:2069}}\Node%
-{\def\Element%
-{0:2070}}\Node%
-{\def\Element%
-{0:2071}}dsn\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2072}}\Node%
-{\def\Element%
-{0:2073}}String representing the ODBC data source name.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2074}}\Node%
-{\def\Element%
-{0:2075}}\Node%
-{\def\Element%
-{0:2076}}user\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2077}}\Node%
-{\def\Element%
-{0:2078}}String representing the user name to use for
- authentication.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2079}}\Node%
-{\def\Element%
-{0:2080}}\Node%
-{\def\Element%
-{0:2081}}password\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2082}}\Node%
-{\def\Element%
-{0:2083}}String representing the unencrypted password to
- use for authentication.\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2084}}\Node%
-{\def\Element%
-{0:2085}}PostgreSQL\endNode{}\Node%
-{\def\Element%
-{0:2086}}\Node%
-{\def\Element%
-{0:2087}}Libraries\endNode{}\Node%
-{\def\Element%
-{0:2088}}The PostgreSQL back-\/end needs access to the PostgreSQL C
- client library (\Node%
-{\def\Element%
-{0:2089}}libpq.so\endNode{}). The
- location of this library is specified via
- \Node%
-{\def\Element%
-{0:2090}}*postgresql-\/so-\/load-\/path*\endNode{}, which defaults
- to \Node%
-{\def\Element%
-{0:2091}}/usr/lib/libpq.so\endNode{}. Additional flags
- to \Node%
-{\def\Element%
-{0:2092}}ld\endNode{} needed for linking are
- specified via \Node%
-{\def\Element%
-{0:2093}}*postgresql-\/so-\/libraries*\endNode{},
- which defaults to \Node%
-{\def\Element%
-{0:2094}}("-\/lcrypt" "-\/lc")\endNode{}.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2095}}\Node%
-{\def\Element%
-{0:2096}}Initialization\endNode{}\Node%
-{\def\Element%
-{0:2097}}Use
- \Node%
-{\def\Element%
-{0:2098}}(mk:load-\/system :clsql-\/postgresql)\endNode{}
- to load the PostgreSQL back-\/end. The database type for the
- PostgreSQL back-\/end is \Node%
-{\def\Element%
-{0:2099}}:postgresql\endNode{}.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2100}}\Node%
-{\def\Element%
-{0:2101}}Connection Specification\endNode{}\Node%
-{\def\Element%
-{0:2102}}\Node%
-{\def\Element%
-{0:2103}}Syntax of connection-\/spec\endNode{}\Node%
-{\def\Element%
-{0:2104}}(\Node%
-{\def\Element%
-{0:2105}}host\endNode{} \Node%
-{\def\Element%
-{0:2106}}db\endNode{} \Node%
-{\def\Element%
-{0:2107}}user\endNode{} \Node%
-{\def\Element%
-{0:2108}}password\endNode{} \Entity{amp}optional \Node%
-{\def\Element%
-{0:2109}}port\endNode{} \Node%
-{\def\Element%
-{0:2110}}options\endNode{} \Node%
-{\def\Element%
-{0:2111}}tty\endNode{})\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2112}}\Node%
-{\def\Element%
-{0:2113}}Description of connection-\/spec\endNode{}\Node%
-{\def\Element%
-{0:2114}}For every parameter in the connection-\/spec,
- \Node%
-{\def\Element%
-{0:2115}}nil\endNode{} indicates that the PostgreSQL default
- environment variables (see PostgreSQL documentation) will
- be used, or if those are unset, the compiled-\/in defaults
- of the C client library are used.\endNode{}\Node%
-{\def\Element%
-{0:2116}}\Node%
-{\def\Element%
-{0:2117}}\Node%
-{\def\Element%
-{0:2118}}\Node%
-{\def\Element%
-{0:2119}}host\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2120}}\Node%
-{\def\Element%
-{0:2121}}String representing the hostname or IP address
- the PostgreSQL server resides on. Use the empty
- string to indicate a connection to localhost via
- Unix-\/Domain sockets instead of TCP/IP.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2122}}\Node%
-{\def\Element%
-{0:2123}}\Node%
-{\def\Element%
-{0:2124}}db\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2125}}\Node%
-{\def\Element%
-{0:2126}}String representing the name of the database on
- the server to connect to.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2127}}\Node%
-{\def\Element%
-{0:2128}}\Node%
-{\def\Element%
-{0:2129}}user\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2130}}\Node%
-{\def\Element%
-{0:2131}}String representing the user name to use for
- authentication.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2132}}\Node%
-{\def\Element%
-{0:2133}}\Node%
-{\def\Element%
-{0:2134}}password\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2135}}\Node%
-{\def\Element%
-{0:2136}}String representing the unencrypted password to
- use for authentication.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2137}}\Node%
-{\def\Element%
-{0:2138}}\Node%
-{\def\Element%
-{0:2139}}port\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2140}}\Node%
-{\def\Element%
-{0:2141}}String representing the port to use for
- communication with the PostgreSQL server.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2142}}\Node%
-{\def\Element%
-{0:2143}}\Node%
-{\def\Element%
-{0:2144}}options\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2145}}\Node%
-{\def\Element%
-{0:2146}}String representing further runtime options for
- the PostgreSQL server.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2147}}\Node%
-{\def\Element%
-{0:2148}}\Node%
-{\def\Element%
-{0:2149}}tty\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2150}}\Node%
-{\def\Element%
-{0:2151}}String representing the tty or file to use for
- debugging messages from the PostgreSQL server.\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2152}}\Node%
-{\def\Element%
-{0:2153}}PostgreSQL Socket\endNode{}\Node%
-{\def\Element%
-{0:2154}}\Node%
-{\def\Element%
-{0:2155}}Libraries\endNode{}\Node%
-{\def\Element%
-{0:2156}}The PostgreSQL Socket back-\/end needs
- \Node%
-{\def\Element%
-{0:2157}}no\endNode{} access to the PostgreSQL C
- client library, since it communicates directly with the
- PostgreSQL server using the published frontend/backend
- protocol, version 2.0. This eases installation and makes it
- possible to dump CMU CL images containing CLSQL and this
- backend, contrary to backends which require FFI code.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2158}}\Node%
-{\def\Element%
-{0:2159}}Initialization\endNode{}\Node%
-{\def\Element%
-{0:2160}}Use
- \Node%
-{\def\Element%
-{0:2161}}(mk:load-\/system :clsql-\/postgresql-\/socket)\endNode{}
- to load the PostgreSQL Socket back-\/end. The database type for the
- PostgreSQL Socket back-\/end is
- \Node%
-{\def\Element%
-{0:2162}}:postgresql-\/socket\endNode{}.\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2163}}\Node%
-{\def\Element%
-{0:2164}}Connection Specification\endNode{}\Node%
-{\def\Element%
-{0:2165}}\Node%
-{\def\Element%
-{0:2166}}Syntax of connection-\/spec\endNode{}\Node%
-{\def\Element%
-{0:2167}}(\Node%
-{\def\Element%
-{0:2168}}host\endNode{} \Node%
-{\def\Element%
-{0:2169}}db\endNode{} \Node%
-{\def\Element%
-{0:2170}}user\endNode{} \Node%
-{\def\Element%
-{0:2171}}password\endNode{} \Entity{amp}optional \Node%
-{\def\Element%
-{0:2172}}port\endNode{} \Node%
-{\def\Element%
-{0:2173}}options\endNode{} \Node%
-{\def\Element%
-{0:2174}}tty\endNode{})\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2175}}\Node%
-{\def\Element%
-{0:2176}}Description of connection-\/spec\endNode{}\Node%
-{\def\Element%
-{0:2177}}\Node%
-{\def\Element%
-{0:2178}}\Node%
-{\def\Element%
-{0:2179}}\Node%
-{\def\Element%
-{0:2180}}host\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2181}}\Node%
-{\def\Element%
-{0:2182}}If this is a string, it represents the hostname or
- IP address the PostgreSQL server resides on. In
- this case communication with the server proceeds via
- a TCP connection to the given host and port.\endNode{}\Node%
-{\def\Element%
-{0:2183}} If this is a pathname, then it is assumed to name the
- directory that contains the server's Unix-\/Domain
- sockets. The full name to the socket is then
- constructed from this and the port number passed,
- and communication will proceed via a connection to
- this unix-\/domain socket.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2184}}\Node%
-{\def\Element%
-{0:2185}}\Node%
-{\def\Element%
-{0:2186}}db\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2187}}\Node%
-{\def\Element%
-{0:2188}}String representing the name of the database on
- the server to connect to.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2189}}\Node%
-{\def\Element%
-{0:2190}}\Node%
-{\def\Element%
-{0:2191}}user\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2192}}\Node%
-{\def\Element%
-{0:2193}}String representing the user name to use for
- authentication.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2194}}\Node%
-{\def\Element%
-{0:2195}}\Node%
-{\def\Element%
-{0:2196}}password\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2197}}\Node%
-{\def\Element%
-{0:2198}}String representing the unencrypted password to
- use for authentication. This can be the empty
- string if no password is required for
- authentication.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2199}}\Node%
-{\def\Element%
-{0:2200}}\Node%
-{\def\Element%
-{0:2201}}port\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2202}}\Node%
-{\def\Element%
-{0:2203}}Integer representing the port to use for
- communication with the PostgreSQL server. This
- defaults to 5432.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2204}}\Node%
-{\def\Element%
-{0:2205}}\Node%
-{\def\Element%
-{0:2206}}options\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2207}}\Node%
-{\def\Element%
-{0:2208}}String representing further runtime options for
- the PostgreSQL server.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2209}}\Node%
-{\def\Element%
-{0:2210}}\Node%
-{\def\Element%
-{0:2211}}tty\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2212}}\Node%
-{\def\Element%
-{0:2213}}String representing the tty or file to use for
- debugging messages from the PostgreSQL server.\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2214}}\Node%
-{\def\Element%
-{0:2215}}\Node%
-{\def\Element%
-{0:2216}}This glossary is still very thinly populated, and not all
- references in the main text have been properly linked and
- coordinated with this glossary. This will hopefully change in
- future revisions.
- \endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2217}}\Node%
-{\def\Element%
-{0:2218}}Active database\endNode{}\Node%
-{\def\Element%
-{0:2219}}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2220}}\Node%
-{\def\Element%
-{0:2221}}Connection\endNode{}\Node%
-{\def\Element%
-{0:2222}}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2223}}\Node%
-{\def\Element%
-{0:2224}}Closed Database\endNode{}\Node%
-{\def\Element%
-{0:2225}}\Node%
-{\def\Element%
-{0:2226}} An object of type \Node%
-{\def\Element%
-{0:2227}}closed-\/database\endNode{}. This is
- in contrast to the terms connection, database, active
- database or \Node%
-{\def\Element%
-{0:2228}}database object\endNode{}
- which don't include objects which are closed database.
- \endNode{}\endNode{}\endNode{}\Node%
-{\def\Element%
-{0:2229}}\Node%
-{\def\Element%
-{0:2230}}database\endNode{}\Node%
-{\def\Element%
-{0:2231}}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:GLOSS-FFI}}\Node%
-{\def\Element%
-{0:2233}}Foreign Function Interface
- (\Node%
-{\def\Element%
-{0:2234}}FFI\endNode{})
- \endNode{}\Node%
-{\def\Element%
-{0:2235}}\Node%
-{\def\Element%
-{0:2236}} An interface from Common Lisp to a external library which
- contains compiled functions written in other programming
- languages, typically C.
- \endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:GLOSS-DATABASE-OBJECT}}\Node%
-{\def\Element%
-{0:2238}}Database Object\endNode{}\Node%
-{\def\Element%
-{0:2239}}\Node%
-{\def\Element%
-{0:2240}}An object of type \Node%
-{\def\Element%
-{0:2241}}database\endNode{}.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:GLOSS-FIELD-TYPES}}\Node%
-{\def\Element%
-{0:2243}}Field Types Specifier\endNode{}\Node%
-{\def\Element%
-{0:2244}}\Node%
-{\def\Element%
-{0:2245}}A value that specifies the type of each field in a query.\endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:GLOSS-SQL}}\Node%
-{\def\Element%
-{0:2247}}Structured Query Language
- (\Node%
-{\def\Element%
-{0:2248}}SQL\endNode{})
- \endNode{}\Node%
-{\def\Element%
-{0:2249}}\Node%
-{\def\Element%
-{0:2250}} An ANSI standard language for storing and retrieving data
- in a relational database.
- \endNode{}\endNode{}\endNode{}\Node%
-{\def\Label%
-{0:GLOSS-SQL-EXPRESSION}}\Node%
-{\def\Element%
-{0:2252}}SQL Expression\endNode{}\Node%
-{\def\Element%
-{0:2253}}\Node%
-{\def\Element%
-{0:2254}}Either a string containing a valid SQL statement, or
- an object of type \Node%
-{\def\Element%
-{0:2255}}sql-\/expression\endNode{}\Node%
-{\def\Element%
-{0:2256}}\Node%
-{\def\Element%
-{0:2257}}This has not been implemented yet, so only strings
- are valid SQL expressions for the moment.\endNode{}\endNode{}
- \endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endFOT{}
\ No newline at end of file