He cargado una función UDF en MySQL (sin haber seleccionado ningún DB en particular). Se utiliza para funcionar bien durante mi sesión, pero ahora me sale el error "ERROR 1305 (42000): currentdatabase.myfunction función no existe" cuando intento utilizar la función con la siguiente instrucción SQL:No se puede usar una función UDF de MySQL
select myfunction('aaa');
I intenté soltar la función y obtuve el mismo código de error:
mysql> drop function myfunction;
ERROR 1305 (42000): FUNCTION database.myfunction does not exist
si se selecciona un DB.
Otro código de error de otro modo:
ERROR 1046 (3D000): No database selected
Así que decidió especificar de nuevo la función y me dieron el siguiente código de error:
CREATE FUNCTION myfunction RETURNS INT SONAME 'myfunction.so';
ERROR 1125 (HY000): Function 'myfunction' already exists
Mi pregunta es: ¿cómo utilizar de nuevo mi función?
Gracias de antemano.
Nota: no hay problemas de espacio como ("seleccione myfunction ('aaa');") como se informa en varios otros sitios web.
Estoy teniendo el mismo problema. Creo que el problema es que (al menos lo hice) eliminé la biblioteca .so compartida antes de abandonar la función o mientras mysqld todavía estaba ejecutándose. No sé cómo resolver esto, alguien? 'SELECT * FROM mysql.func' lista la función que quiero usar. – juanmirocks