Common Lisp MySQL library bindings
Common Lisp SQL Interface library
PostgreSQL programming API
cl-sqlite is a library for interacting with sqlite databases through SQL.Homepage: http://common-lisp.net/project/cl-sqlite/License: Public Domain
CL-DBI is intended to provide the same SQL interface for each database.Not only, you don't have to learn each API of databases anymore, but this layer is especially convenient when you want to use the different database by environment.For example, your application had better to use efficient database such as MySQL on the production environment, but you may want to use SQLite3 on your machine. In that case, all what you have to do is only to rewrite calling "dbi:connect".Homepage: fukamachi.github.com/cl-dbiLicense: LLGPL
cl-fbclient is an interface to Firebird SQL databases. Source: https://github.com/klimenko-serj/cl-fbclientWiki: http://github.com/klimenko-serj/cl-fbclient/wiki
(cl-fbclient:fb-with-database (DB :path "/path-to-db/db-file.fdb")
(cl-fbclient:fb-query "SELECT * FROM T1" :db DB)
(cl-fbclient:fb-query "INSERT INTO T1(A1,A2) VALUES(121, 42)" :db DB)
(cl-fbclient:fb-query "SELECT * FROM T1" :db DB))
Common lisp binding for InfluxDB
cl-migrations is a port of Ruby on Rails migrations feature to CL. It provides a simple way to version-control your database changes. As a web project grows, it's database will go through numerous structural changes, but if things go wrong with a new version, there should be a proper way to disable new changes to database and bring it back to a previously known good position. Rails has a very simple and neat way of doing this, so I have ported the feature to CL. Homepage: http://common-lisp.net/project/cl-migrations/.Author: Vamsee KanakalaLicence: MITdatabase SQL
lisp system to interact with mongodb, a non-sql db
cl-mssql is an interface to Microsoft SQL Server databases.License: MITHomepage: http://code.google.com/p/cl-mssql/
neo4j RESTful Client Interface
CL-Redis: Common Lisp client library for Redis database, an advanced key/value store. It is thoroughly tested with the Redis-2.0.0-rc2 release.The source code can be found at: GitHub (Manual).Since version 1.6.0, we switched to iolib backend. Version 1.5.0 is the last release with usocket backend.
Clouchdb is an interface to the CouchDb databases.Features include:
A lispy syntax for creating document views (thanks to Parenscript).
It supports CouchDb version 1.1.0 and newer, and it should be portable across Lisp implementations. It has currently been tested with SBCL and Clozure CL on Mac OSX Lion (64bit,Intel).License: BSDHomepage: http://common-lisp.net/project/clouchdb/Author: Peter EddyStructuredStorage
CLSQL-ORM is an library to generate clsql view-classes from existing databases, by introspecting on the "information_schema" of the running database.For more info see: Git Hub: https://github.com/AccelerationNet/CLSQL-ORM
manardb: Fast, persistent, mmap'd Lisp object store Manardb provides persistent classes (integrated into the object system via the meta-object protocol), stored efficiently in memory mapped regions. It features transactions, two different garbage collection mechanisms (to clean up unreferenced objects in the database), in-place modification of arrays, efficient in-place numeric typed slots, and the ability to transparently serialise Lisp objects of many types (lists, vectors, floats, integers, symbols, strings).It allows Common Lisp programs to efficiently access in-memory representations of large numbers of persistent objects without putting pressure on the Lisp garbage collector.HomepageObjectStore
Pg is a socket-level interface to the PostgreSQL object-relational Database.
Pg implements the client part of the frontend/backend
protocol, so does not require interfacing with the libpq library. SQL
types are converted to the equivalent Common Lisp types where
possible. Supports large objects (BLOBs).Postmodern is a newer and much-much cleaner library. Its cl-postgres asdf system implements the same functionality as Pg -- Attila Lendvai
The only non portable code is the use of SOCKET-CONNECT. Versions are
provided for CMU Common Lisp (CMUCL), SBCL, OpenMCL, CLISP, LispWorks and Allegro Common Lisp (ACL). Corman CL doesn't support binary I/O on socket streams, so it doesn't work there.Pg is available under the GNU LGPL licence from www.chez.com/emarsden/downloads.
There are also Emacs Lisp and scsh versions of the library.This is a snapshot of the CVS repository at common-lisp.net/project/pg and it is not GPG signed.Here is the last released version, but it's quite old:http://www.chez.com/emarsden/downloads/pg-dot-lisp-0.19.tar.gzSample code:
(with-pg-connection (conn "testdb" "login" :host "dbhost" :password "secret")
(when (member "test_date" (pg-tables conn) :test #'string=)
(pg-exec conn "DROP TABLE test_date"))
(pg-exec conn "CREATE TABLE test_date(a timestamp, b abstime, c time, d date)")
(pg-exec conn "INSERT INTO test_date VALUES "
"(current_timestamp, 'now', 'now', 'now')")))
Stargreen Box Office uses Pg for its database glue layer; it's respectably fast, simple enough to see what it's doing, and impervious to PostgreSQL shared library versioning issues (because it doesn't use them). I'm very happy with it -- Daniel Barlow
You must set unix_socket_directory in your postgresql.conf to /var/run/postgresqlpg doesn't use the default path for the unix domain socket. See Socket Path.
Plain-odbc is a simple, yet powerful Common Lisp ODBC interface.
It is possible to use parameterized queries with in and out parameters and call stored procedures.
In principle it should be possible to use any database which offers an ODBC interface (even MS Excel and MS Access).The primary development platform is CLISP on win32, but plain-odbc is also usable with CLISP on Linux with unixODBC. High level features such as a special reader syntax for sql or mapping of CLOS objects to database tables are not part of plain-odbc.The low level parts of the system consist of code from Paul Meurers sqlodbc module.
The system uses now CFFI to interface to the ODBC C functions.More Information can be found at the project page.SQL
Rucksack is a persistence (embedded database) library for Common Lisp.Here was a CVS repository.And here is a GitLab repository used by the Quicklisp for distribution.
umlisp is an CLOS object-oriented interface to the Unified Medical Language System. It uses a SQL database to index and access the 15 gigabytes of text UMLS data. UMLisp is written by Kevin Rosenberg. There is an online demonstration system for browsing the UMLS at the UMLisp web site.
or at archive.org since umlisp.b9.com seems not to exist anymore.
A base for weblocks stores
Functions to convert between the spacing and
capitalization conventions of various environments
Web Application Framework for Common Lisp
Password management for Common Lisp (web) applications.
Simple GIS data types with Well-Known Binary encoding and decoding.
Common Lisp SQL Fluid Connection Pools
Cobol Storage library
A library providing a data-table class, and useful functionality around this
Robust CSV parser and printer
Lisp Markup Language
Programmatical interfaces extension for Modularize
High-level virtual FS using CL-Fuse-Meta-FS to represent results of queries
Composable Transactional Memory
Submarine is a Common Lisp library that's somewhere between a PostgreSQL library an an object persistency system. It uses Postmodern to communicate with the database. The basic idea is that you create your classes in the metaclass DB-CLASS and submarine cares about creating SQL tables or, if the tables already exist, checking if they conform to the provided specification. Moreover, Submarine supports an intuitive way of expressing both one-to-many and many-to-many relations.The author of Submarine is Ryszard Szopa.The common-lisp.net webpage of the project is http://common-lisp.net/project/submarine/.Library SQL
Terminfo database front-end.
Read and write cdb files, as specified in