2015-08-12 2 views
0

J'ai donc 4 tables dans ma base de données et chaque table a un élément ID serial. Cependant, certaines tables utilisent ces identifiants comme références et je ne suis pas sûr de savoir comment les créer en même temps, sans que des erreurs se produisent lorsque deux personnes accèdent à ce service en même temps.Postgresql Instanciation et référencement des clés étrangères

Au fond, mes pensées sont pour générer les lignes vides avec de nouveaux identifiants, comme

INSERT INTO table1 DEFAULT VALUES; 

référence alors le plus grand ID de la plus récente et de faire mes clés étrangères de référence le plus grand ID. Cependant, je vois cela comme un problème si deux personnes veulent accéder à ce service en même temps et qu'une personne installe une nouvelle ligne pendant que l'autre personne cherche son ID de référence. Y a-t-il une façon moins sujette aux erreurs de gérer ces références?

Répondre

0

vous pouvez trouver l'identifiant à l'aide RETURNING id, vous pouvez donc utiliser cette valeur pour FOREIGN KEYS

+0

Merci! Semble être juste ce que je cherchais. Je suis nouveau à SQL en général et n'a pas semblé voir quoi que ce soit à ce sujet pour le moment. – Programmer