Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/06/2014, 12:05
Avatar de Italico76
Italico76
 
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Busqueda Funciones almacenadas : error al invocarla -> Unknown table 'xxx' in field list

HOLA

Estoy escribiendo una "funcion almacenada" en MySQL solo por aprender y no tengo mayor problemas con ella salvo al invocarla:

Código MySQL:
Ver original
  1. SELECT get_date_formated() as fecha_ok FROM `wp_posts` WHERE id=2;

Me dice que 'post_date' no esta en la lista de tablas... y que la cualifique no cambia en nada la cosa:

Cita:
Unknown table 'wp_posts' in field list

Aqui mi funcion almacenada:

Código MySQL:
Ver original
  1. DROP FUNCTION IF EXISTS get_date_formated;
  2. DELIMITER $$
  3. CREATE FUNCTION get_date_formated()
  4.     RETURNS CHAR(40)
  5.     DECLARE salida CHAR(40);       
  6.  
  7.     SET mes = CAST(MONTH(`wp_posts`.post_date) AS CHAR));
  8.    
  9.     REPLACE(mes, '1', 'Enero');
  10.     REPLACE(mes, '2', 'Febrero');
  11.     REPLACE(mes, '3', 'Marzo');
  12.     REPLACE(mes, '4', 'Abril');
  13.     REPLACE(mes, '5', 'Mayo');
  14.     REPLACE(mes, '6', 'Junio');
  15.     REPLACE(mes, '7', 'Julio');
  16.     REPLACE(mes, '8', 'Agosto');
  17.     REPLACE(mes, '9', 'Setiembre');
  18.     REPLACE(mes, '10', 'Octubre');
  19.     REPLACE(mes, '11', 'Noviembre');
  20.     REPLACE(mes, '12', 'Diciembre');   
  21.    
  22.     SET salida =
  23.         CONCAT(
  24.             CASE DAYOFWEEK(`wp_posts`.post_date)
  25.                 WHEN 7 then 'Sabado'
  26.                 WHEN 1 then 'Domingo'
  27.                 WHEN 2 then 'Lunes'
  28.                 WHEN 3 then 'Martes'
  29.                 WHEN 4 then 'Miercoles'
  30.                 WHEN 5 then 'Jueves'
  31.                 WHEN 6 then 'Viernes'
  32.                 ELSE 'error'
  33.             end,', ',DAY(`wp_posts`.post_date),' de ',mes,' del ',YEAR(`wp_posts`.post_date)
  34.         );     
  35.         RETURN salida;
  36. $$
  37. DELIMITER ;

La idea es obtener algo como "Jueves, 12 de Junio del 2014" como solicitan en un post de PHP que @gnzsolaya ha visto tambien
__________________
Salu2!