2011-04-19 1 views
0

Nous disposons d'une base de données de contrats qui extrait les données de notre système de gestion des tâches pendant la nuit en utilisant une procédure stockée simple. Le processus stocké supprime simplement les données de la table locale et les remplit avec les nouvelles données copiées. Cela signifie évidemment que nous ne pouvons pas établir de relations avec ces données dans la table/base de données locale. Est-ce que n'importe qui a de bonnes idées de stratégie pour améliorer ceci afin que nous puissions établir les rapports corrects à cette table. Comment puis-je gérer un enregistrement supprimé dans la table distante si une relation avec cet enregistrement a été établie dans la table locale, car sa suppression entraînerait la rupture de la relation.Traitement des données copiées à partir de bases de données distantes

Répondre

0

Que diriez-vous de tronquer la table au lieu de la supprimer?

Si vous utilisez SQL Server: TRUNCATE TABLE

1

Je suppose que vous parlez d'un problème de synchronisation. Comme dans, comment pouvez-vous faire les associations lorsque les données sont emportées et recréées tous les soirs?

Ce que je ferais est de créer des clés étrangères NULL sur les données locales qui ont besoin de s'y référer. La procédure stockée doit annuler toutes les clés étrangères sur les différentes tables locales lorsque les nouvelles données arrivent. Ensuite, lorsque les données sont restaurées à partir de la base de données distante, faites passer la procédure stockée et consolidez les clés étrangères pour re -créer les relations.

Questions connexes