X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=db-mysql%2Fmysql-sql.lisp;h=36fc90a9d25525cfaec3336f43985f0fd33ddda0;hb=refs%2Ftags%2Fv4.0.1;hp=eee57c4e40e32f6d16c773bff6aa8b8fe9b6c304;hpb=5ed1f05543cbd24b3f2bb735f2cfc03ea85e51ec;p=clsql.git diff --git a/db-mysql/mysql-sql.lisp b/db-mysql/mysql-sql.lisp index eee57c4..36fc90a 100644 --- a/db-mysql/mysql-sql.lisp +++ b/db-mysql/mysql-sql.lisp @@ -156,21 +156,22 @@ :connection-spec connection-spec :error-id (mysql-errno mysql-ptr) :message (mysql-error-string mysql-ptr))) - (let ((db - (make-instance 'mysql-database - :name (database-name-from-spec connection-spec - database-type) - :database-type :mysql - :connection-spec connection-spec + (let* ((db + (make-instance 'mysql-database + :name (database-name-from-spec connection-spec + database-type) + :database-type :mysql + :connection-spec connection-spec :server-info (uffi:convert-from-cstring (mysql:mysql-get-server-info mysql-ptr)) :mysql-ptr mysql-ptr)) - (cmd "SET SESSION sql_mode='ANSI'")) - (if (zerop (mysql-real-query mysql-ptr cmd (expression-length cmd))) - db - (progn - (warn "Error setting ANSI mode for MySQL.") - db)))) + (cmd "SET SESSION sql_mode='ANSI'")) + (uffi:with-cstring (cmd-cs cmd) + (if (zerop (mysql-real-query mysql-ptr cmd-cs (expression-length cmd))) + db + (progn + (warn "Error setting ANSI mode for MySQL.") + db))))) (when error-occurred (mysql-close mysql-ptr)))))))))