lo que tu propones es una relación uno a varios entre la tabla categorías y la tabla eventos que se puede expresar así, -pueden existir varios eventos para cada categoría-, yo llevo muy poco tiempo con mysql, la experiencia que tengo es con access.
idcategoría sería la clave principal en la tabla categorías y clave secundaria en la tabla eventos, lo que ocurre es que hasta donde alcanzan mis conocimiento mysql no soporta claves secundarias, o yo no sé como hacerlo.
no pueden existir hijos sin padre, es decir no puedes agregar un registro a la tabla eventos si no está relacionado con un registro de la tabla categorías, el sistema no puede -hasta donde yo sé- diseñar la base de datos. podrías adoptar una solución intermedia utilizando una categoría que sea varios o miscelanea o algo por el estilo de esta manera todas las filas hijo tendrán un padre reconocido.
si quieres consultar mi base de datos para ver el diseño puedes descargarla desde mi página web,
http://www.carloszcom.com, o directamente desde
http://www.carloszcom.com/archivomde. dentro de la carpeta zip que descargues tienes la base de datos en un archivo mde, un archivo mdw al que debes unirte para poder entrar, dos carpetas con imágenes y un archivo de texto muy breve con los usuarios disponibles y otras instrucciones. en total son 50 megas, una exageración ya lo sé. por supuesto tienes que tener instalado acces en tu equipo.
que tengas suerte.