Es que esa no es la forma de asignar datos de una consulta a variables. En ningún DBMS.
Código SQL:
Ver originalSELECT Fecha, IdCuenta, Descripcion, Importe
FROM diario
WHERE Id = idRegistro
INTO fecha, idCuenta, descripcion, importe;
Por otro lado, no uses los mismos nombres de variables que los que tienen las columnas. MySQL puede confundirlos por que los evalúa jerárquicamente.
Usa nombres distintos