El siguiente procedimiento me da un error cuando invoco que mediante la sentencia CALL:La creación de tablas temporales en procedimiento almacenado de MySQL
CREATE DEFINER=`user`@`localhost` PROCEDURE `emp_performance`(id VARCHAR(10))
BEGIN
DROP TEMPORARY TABLE IF EXISTS performance;
CREATE TEMPORARY TABLE performance AS
SELECT time_in, time_out, day FROM attendance WHERE employee_id = id;
END
El error dice " 'rendimiento' Desconocido mesa".
Esta es la primera vez que uso procedimientos almacenados y obtuve mis fuentes de Google. Simplemente no puedo entender lo que estoy haciendo mal.
Se ve bien para mí !!! – RolandoMySQLDBA
Mi propósito de crear la tabla temporal es consultarla posteriormente. Acabo de probar tu código y la tabla tmp que creaste no estaba disponible para consulta. En cambio, me da un conjunto de resultados. Entonces el procedimiento solo prepara la asistencia de los empleados – burntblark
puede hacer lo que sugirió pero la tabla solo estará disponible para la conexión que lo creó o lo llamó el sproc. No recomendaría este enfoque, pero si pudiera elaborar un poco más sobre lo que está tratando de hacer, podría tener algunas otras ideas. También puede consultar este http://pastie.org/1673574 –