Sigues teniendo muchos problemas:
Usuario_ID y ID_SubMenu deberían ser FK de sus tablas origen.
ID_Modulo debería ser FK de su tabla origen.
ID_SubMenu no puede ser FK si es una PK y autoincremental en esta tabla.
ID_Modulo no puede ser FK de otra tabla porque es autoincremental en esta.
En el caso de estas dos últimas tablas, estás creando una relación circular: La PK de la primera es FK de la segunda, donde su PK es FK de la primera.
Eso es una relación de imposible cumplimiento.
Si sigo adelante encuentro etos mismos problemas todo el tiempo...
Vamos al principio fundamental:
1) Toda tabla es como mínimo, la representación de una entidad del sistema.
2) Ciertas tablas son desagregaciones de una entidad por razones de normalización (Ver Formas Normales).
3) Ciertas tablas son producto de relaciones N:M (muchos a muchos), que obligatoriamente determinan la existencia de la tabla.
Y luego:
4) Toda tabla debe tener una clave primaria (PK).
5) Una clave primaria puede estar compuesta de un campo único, o de más de un campo, en tanto el grupo definido como PK sea de valores únicos para cada registro, para atributos en el mismo orden.
6) Un a clave foránea (FK) es un campo o conjunto de campos que referencia a la clave primaria de otra tabla, expresando una relación con esa tabla.
7) Una FK sólo puede tener por valores los valores que existan previamente en la tabla referenciada (donde esa clave es PK).
8) Una FK puede ser nula, si y sólo si la relación es
opcional, y no mandatoria.
9) No pueden existir dependencias circulares.
10) Si una tabla hereda su clave de otra como FK (es PK y FK al mismo tiempo en su tabla), en la tabla dependiente
no puede ser autoincremental. Esto por dos razones a) sus valores no se originan localmente, sino en la tabla referida, y b) una FK usualmente expresa una relación 1:N, donde la FK podría aparecer repetida, combinada con un discriminante, lo que rompería con su secuencialidad numérica.
11) Otras, muchas otras cosas mas....
Para limpiar un poco todo eso sería menester posiblemente borrar todas las relaciones y crearlas de nuevo, verificando qué es lo que se representa y cuáles son las dependencias funcionales entre las entidades.
La verdad es que sin conocer qué es lo que se trabaja, es un poco difícil.
¿Podrías describir sucintamente el sistema que estás modelando? ¿Qué hace, y qué entidades tiene?