al administrar las relaciones de entidad en una base de datos que usa GO, es esencial establecer restricciones de clave extranjeras claras. En este artículo, exploraremos el proceso de definir dichas restricciones usando Gorm, un ORM popular para Go.
Considere el siguiente escenario de ejemplo, donde tenemos dos modelos:
type User struct { ID uint Email string Password string } type UserInfo struct { UID uint FirstName string LastName string Phone string Address string User User // Represents the foreign key relationship }
En este ejemplo, el usuario es la tabla principal, y UserInfo es la tabla infantil. El campo UID en UserInfo sirve como la clave extranjera, haciendo referencia al campo ID en la tabla de usuarios.
en Gorm antes de la versión 2.0, era necesario crear explícitamente restricciones de clave extranjera en el esquema de dataBase. Esto se logra utilizando el método addForeignKey en el código de migración:
db.Model(&models.UserInfo{}).AddForeignKey("u_id", "t_user(id)", "RESTRICT", "RESTRICT")
conclusión
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3