mysql-el-es

Lisp:mysql.el trabaja en conjunción con el cliente de MySQL para poder ejecutar consultas desde Elisp en una base de datos.

Cómo usarlo

  1. Crear una conección usando: (setq mi-mysql (mysql-connect))
  2. Luego, hacer la consulta SQL: (mysql-query sql mi-mysql)

En caso de que necesites hacer sólo una consulta, deberías usar mysql-shell-query. Éste no crea un proceso como mysql-connect, por lo que no necesitás hacer ningún tipo de “limpieza”.

La sintaxis es: (mysql-shell-query sql &optional db)

Si la consulta puede tomar mucho tiempo, puede ser que prefieras hacerlo en segundo plano. Para ello puedes usar mysql-query-background.

La sintaxis es: (mysql-query-background sql conexion &optional func)

El parámetro opcional ‘func’ es una función que se ejecuta al terminar la consulta. Dos variables son importantes al usar esta característica:

Algunas Elementos de la API

Funciones y macros:

Variables importantes:

Ejemplos

Un ejemplo de aplicación es Bibus, un manejador de referencias realizado por Ye Wenbin.

Para probar en el buffer borrador(scratch) o para usar en tu propio proyecto:

    (let ((mysql-user "Mi Usuario")
          (mysql-password "Mi Clave"))
      (mysql-shell-query "Mi Consulta de Base de Datos;" "Mi Base de Datos")
      )

Problemas

Existen problemas al querer conectar con otro host, ésta librería no provee en su API ninguna variable o facilidad para conectar con una base de datos remota. Para definir el host deberás cambiar la variable ‘mysql-options’ la cual deberá contener el parámetro -s : (setq mysql-options "-s -h mi.host.com").