Comment insert des loggings dans une relation un à un?
disons que j'ai 3 tables: table A, table B, table C
Je dois insert un logging dans ces tables dont la table A est référencée comme la table principale pour la key primaire.
Disons juste comme ceci:
tableB.PK = tableA.PK tableC.PK = tableA.PK
À présent,
lorsque j'insère des loggings dans tableB ou tableC, l'erreur se produit:
Error Message: The INSERT statement conflicted with the FOREIGN KEY constraint "FK_tableB_tableA"
Mais quand j'insère dans la tableA qui est la base des keys primaires des deux tables, c'est ok et ça s'incrémente.
Comment est-ce que j'insertais un disque? Plus précisément en JPA.
Ici encore mon commentaire en réponse
Puisque vous avez une reference dans tableB et tableC dans tableA, vous devez d'abord insert tableA et récupérer le PK généré. Ensuite, vous pouvez insert dans l'une des autres tables avec l'ID récupéré. Pour JPA regardez ici: Comment get l'ID de la dernière entité persistante en utilisant JPA
Et voici un exemple de la façon d'y parvenir sur le server sql: http://sqlfiddle.com/#!3/a3f62/3
C'est une base dans les bases de données relationnelles et les foreign keys, je n'ai pas lu l'article wiki, mais il faut mentionner même le thinkg: http://en.wikipedia.org/wiki/Foreign_key