Basic Werk | Blog | Contact


MEMOMEM

CommonLisp_dbi_memo_1



CLISP は ffcall とセットでインストールしておけというメモ。



$ sudo port install ffcall $ sudo port install clisp +dynffi
;; CLISP > (ql:quickload :cffi)


参考:

macでclispでcffi - tmp

http://d.hatena.ne.jp/TAKUMA_N/20110429/1304058909


Is there a way to get the CLISP compiled with dynamic FFI support on Mac OS?

http://stackoverflow.com/questions/3901698/is-there-a-way-to-get-the-clisp-compiled-with-dynamic-ffi-support-on-mac-os


上記のステップを踏んで CLISP をインストールすれば Mac OS X で CL-DBI を使ってもエラーなく動作します。



(ql:quickload :dbi) (defvar *db* (dbi-connect :sqlite3 :database-name "sample.db")) (defvar query (dbi:prepare *db* "SELECT code, name FROM members")) (defvar result (dbi:execute query))
;; dbi の fetch は plist の形で返される (dbi:fetch result) ;; -> (:|code| 1 :|name| john)
;; なので特定のカラムのデータを抜き出すには getf を使う (getf (dbi:fetch result) :|code|) ;; -> 2 ;; 実行する度に1レコード進む


中途半端ですが一旦メモ。


参考:

cl-dbi

http://quickdocs.org/cl-dbi/api


Common Lisp用のデータベースライブラリ「CL-DBI」を作りました - 八発白中

http://d.hatena.ne.jp/nitro_idiot/20120130/1327926575


Common LispのProperty Listユーティリティ「Multival-Plist」を公開しました - 八発白中

http://d.hatena.ne.jp/nitro_idiot/20120228/1330425112


#CommonLisp #Lisp #cl-dbi #ffcall #CLISP #MacOSX #MacPorts #QuickLisp #SQL #SQLite



SN 2013/07/21 00:29:10

Archives > CommonLisp_dbi_memo_1.html