2008-09-23 5 views

답변

11

만약 lisp에 의한 공통 리스프를 의미한다면, cl-rdbms이 있습니다. postgres (백도어 lib로 postmodern 사용)에서 많이 테스트됩니다. 장난감 sqlite 백엔드가 있으며 OCI 기반 오라클 백엔드도 있습니다. 그것은 다른 SQL 방언을 추상화하는 것을 지원하고, 예를 들어 SQL에 설치할 수있는 SQL quasi-quote 구문 확장을가집니다. [] 문자.

내가 최고인지 잘 모르겠다. 어쨌든 편향되어있다. :) 그러나 우리는 잠시 동안 clsql을 사용한 후 우리 자신의 라이브러리를 사용하는 것으로 끝났다. 가장 널리 사용되는 sql lib for cl. 추가 참조를 위해 cliki page about sql을 참조하십시오.

7

현재 모든 언급 한 모든 SQL 백엔드를 지원하는 오픈 소스 라이브러리는 없습니다. CLSQL은 매우 가까이에 있습니다 (MS SQL에 대한 지원이 부족합니다). 대안은 다음과 같습니다

  • CL-RDBMS
  • Postmodern (전용 포스트 그레스) (포스트 모던과 sqlite3를 통해 오라클, 포스트 그레스를 지원하는).

상업용 Lisp을 사용할 수 있다면 언급 한 모든 데이터베이스를 지원하는 Lispworks에 포함 된 CommonSQL을 시도해 볼 수 있습니다.

CLSQL은 현재 가장 인기있는 오픈 소스 라이브러리처럼 보입니다. 불행히도, 그것은 비트 썩음으로 고통 받고, 개발자는 모든 플랫폼을 지원하기 위해 약간의 타협을해야했습니다.

RDB 백엔드가 제약 조건이 아니면 Postmodern을 권장합니다. 그것은 매우 잘 문서화되어 있으며 깨끗한 API (그리고 SQL로 컴파일 된 멋진 작은 언어)를 가지고 있습니다. 또한 잘 관리되고 확장 가능하고 이해하기 쉽도록 작습니다. Postgres에만 초점을 맞추고 모든 사람들을위한 모든 것을하려고하지는 않습니다.

+0

잘못되었습니다. http://www.cliki.net/SQL을 참조하십시오. –

+0

당신이 옳았다 고 생각합니다. 그러나 CLSQL이 MS SQL * I *를 지원한다면 맞을 것입니다 :-) 어쨌든, 저는 제 대답을 편집했습니다. –

+0

ODBC를 통해 MS SQL에 연결할 수 있습니까? CL-SQL은 ODBC를 지원해야합니다. –

2

Allegro Common Lisp에는 ODBC 라이브러리와 MySQL-specific 라이브러리가 있으며, 모두 철저히 문서화되어 있습니다. 나는 MySQL을 사용했다. 놀라움이 없습니다.

관련 문제