Cita: Pero por alguna razón extraña, al ver el contenido de la BD, mediante una consulta o por phpMyAdmin, veo que el campo anio no contiene la fecha introducida, digamos 1979, sino siempre un 127
No es ninguna razón extraña. Es simplemente que has cometido dos errores:
1) Declaraste el año como TINYINT con signo, lo que hace que su rango de representación sea de -128 a + 127. Muy mala elección para un número que almacenará años...
2) Creaste tres campos para un dato que se almacena en uno sólo. Las fechas se deben almacenar en campos DATE, DATETIME o TIMESTAMP, pero
no deben almacenarse en campos separados. Es un desperdicio de recursos y resulta ineficiente para las consultas.
Para corroborar lo que digo, hagamos una cosa: Ejecutaa esto y postea el resultado: