estoy realmente interesado en aprender ocaml, es rápido (dijeron que podría compilarse en código nativo) y es funcional. Así que traté de codificar algo fácil como habilitar el programador de eventos mysql.Cómo compilar ocaml al código nativo
#load "unix.cma";;
#directory "+mysql";;
#load "mysql.cma";;
let db = Mysql.quick_connect
~user:"username"
~password:"userpassword"
~database:"databasename"();;
let sql =
"SET GLOBAL EVENT_SCHEDULER=1;"
in
(Mysql.exec db sql);;
que funcione bien en ocaml intérprete, pero cuando yo estaba tratando de compilar a los nativos (estoy usando Ubuntu Karmic), ninguno de estos comandos trabajaron
ocamlopt -o mysqleventon mysqleventon.ml unix.cmxa mysql.cmxa
ocamlopt -o mysqleventon mysqleventon.ml unix.cma mysql.cma
también probé
ocamlc -c mysqleventon.ml unix.cma mysql.cma
todos ellos resulta mismo mensaje
File "mysqleventon.ml", line 1, characters 0-1:
Error: Syntax error
Luego trató de eliminar el "# carga", por lo que el código dice así
let db = Mysql.quick_connect
~user:"username"
~password:"userpassword"
~database:"databasename"();;
let sql =
"SET GLOBAL EVENT_SCHEDULER=1;"
in
(Mysql.exec db sql);;
El ocamlopt resultante mensaje
File "mysqleventon.ml", line 1, characters 9-28:
Error: Unbound value Mysql.quick_connect
espero que alguien podría decirme, ¿dónde estoy haciendo incorrecto.
Sólo un comentario: no es necesario el Printf.sprintf en el código mostrar. –
Lo modifiqué de la red (olvidé la dirección) como mi primer intento en la base de datos. Intenté tu sugestión y tienes razón, así que eliminé la parte "Printf.sprintf" del código. Gracias. –