Hola azuel:
Si checas, en tu tabla usuarios el campo llave es
cod_usu sin embargo en la tabla comentarios estás poniéndolo como
cod_usuario. La sintaxis correcta para poner el FK a la tabla de usuarios sería así:
Código:
CONSTRAINT FK_coment_usu FOREIGN KEY (cod_usuario)
REFERENCES usuarios (cod_usu)
Código MySQL:
Ver originalmysql> #Creamos la tabla de usuarios
Query OK, 0 rows affected (0.06 sec)
mysql
> insert into usuarios
(usuarios
, passwords
) values ('usuario uno', 'password uno');
Query OK, 1 row affected (0.02 sec)
+---------+-------------+--------------+
| cod_usu | usuarios | passwords |
+---------+-------------+--------------+
+---------+-------------+--------------+
mysql> #Creamos la tabla de videos
Query OK, 0 rows affected (0.08 sec)
Query OK, 1 row affected (0.02 sec)
+-----------+------------+
| cod_video | otro_campo |
+-----------+------------+
| 1 | otro campo |
+-----------+------------+
mysql> #Creamos la tabla de comentarios
d_video),
od_usu)
Query OK, 0 rows affected (0.08 sec)
mysql> #Insertamos un registro con las llaves foráneas correctas
1, 'comentario');
Query OK, 1 row affected (0.03 sec)
+---------+-----------+-------------+-------------+
| cod_cmt | cod_video | cod_usuario | comentarios |
+---------+-----------+-------------+-------------+
| 1 | 1 | 1 | comentario |
+---------+-----------+-------------+-------------+
mysql> #Verificamos que exista la referencia con la tabla videos
1, 'comentario');
mysql> #Verificamos que exista la referencia con la tabla usuarios
mysql
> insert into comentarios
(cod_video
, cod_usuario
, comentarios
) values (1,2,'comentario');
Saludos
Leo