Supuse que te refieres a las restricciones o constraints del motor InnoDB, que se utilizan para mantener la integridad referencial (un tema de bases de datos en general, no solamente MySQL).
Finalidad: mantener la integridad de las referencias que se hacen de una tabla hacia otra.
Por ejemplo: una tabla de pedidos, siempre tiene un campo con el código de cliente. Por ejemplo: CLIENTE_ID
En la tabla de clientes debe haber un cliente que tenga ese mismo número de CLIENTE_ID
Una vez que configuras estas "relaciones" o "restricciones", la base de datos no te dejará borrar (dará error) un cliente que esté mencionado en un pedido. Tampoco te dejará cambiar el valor de CLIENTE_ID de un cliente, porque perderías la "conexión" con sus pedidos.
O bien, podrías usar (lo veremos en las sentencias) la opción CASCADE, en ese caso, las sentencias:
ON DELETE CASCADE provocará que al borrar el registro padre (ej: cliente) también se borren todos los registros hijo (ej: sus pedidos)
ON UPDATE CASCADE provocará que al modificar la clave principal del registro padre (su CLIENTE_ID), el mismo sea actualizado automáticamente en los registros hijos (ej: el CLIENTE_ID de un cliente pasa de ser 08 a 108, la restricción configurada hará que el CLIENTE_ID de sus pedidos cambie asimismo de 08 a 108).
Te envío esta respuesta que es bastante breve, pero últimamente debo hacerlas así o me demoro mucho y me atraso en responder. Lee sobre las sentencias ON DELETE CASCADE y ON UPDATE CASCADE, ahora que sabes de qué se tratan.