首页 > 代码库 > 使用Artful MySQL模块出错

使用Artful MySQL模块出错

总是报错:

root@gitlab:/opt# newlisp
newLISP v.10.6.0 64-bit on Linux IPv4/6 UTF-8 libffi, options: newlisp -h

> (load "/opt/mysql.lsp")

ERR: string expected in function import : libmysqlclient

结果发现是Ubuntu 12.04下安装的libmysqlclient.so的路径不正常,用 find / -name查找, 将真实路径加入到mysql.lsp文件里

;;; Find the libmysqlclient library on this system                                                                                               
(setf is-64-bit nil)
(let ((paths ‘("/usr/lib/libmysqlclient.so"
               "/usr/lib/x86_64-linux-gnu/libmysqlclient.so" ;;here
               "/usr/lib64/mysql/libmysqlclient.so"
               "/usr/local/mysql/lib/libmysqlclient.dylib"
               "/opt/local/lib/libmysqlclient.dylib"
               "/sw/lib/libmysqlclient.dylib")))

好了。载入模块成功:

> (load "/opt/mysql.lsp")
MAIN

但是连接数据库报错。原来是没有跟上newllisp 10.6.0的步伐。 如今获取最新的未測试的代码:

git clone https://gist.github.com/10490156.git

> (load "/opt/10490156/mysql.lsp")                                                                                                               
MAIN                                                                                                                                             
> _MYSQL:is-64-bit                                                                                                                               
true                                                                                                                                             
> (setf db (Mysql))                                                                                                                              
(Mysql 10710960)                                                                                                                                 
> (:connect db "localhost" "root" "770328" "mysql")                                                                                              
true                                                                                                                                             
> (:query db "show tables")                                                                                                                      
(MysqlResult 10812080)                                                                                                                           
> (exit)

似乎可用了,详细还要等作者完毕測试。

http://www.newlispfanclub.alh.net/forum/viewtopic.php?f=16&t=4502

f=16&t=4502">

f=16&t=4502">http://www.artfulcode.net/articles/a-better-mysql-module-for-newlisp/


使用Artful MySQL模块出错