soir,T-SQL - Stockez la procédure stockée insérée dans/mise à jour d'un enregistrement dans une table
J'ai commencé dans une organisation où une grande solution SSIS impliquant de gros paquets pousse des données dans tous les sens, y compris entre les serveurs . La personne qui l'a développé est partie et je suis resté avec la tâche de le trouver et de le déboguer ...
J'ai produit des DFDs assez étendus pour mapper les relations entre les procédures stockées, les tables, les vues etc mais il y a quelques tables où j'ai trouvé impossible de déterminer quel processus inséré dedans/mis à jour.
Ce que je voudrais faire est de créer des champs sur les tables qui me préoccupent avec les valeurs par défaut chaque fois que la table est écrite.
- Champ1,
- Champ2
- etc ...
- 'DateTime Dossier ajouté'
- 'processus que le 1er Inséré le dossier',
- 'DateTime Fiche Dernière mise à jour'
- 'Processus ayant mis à jour la fiche'
Où les valeurs de processus seraient sous la forme 'Server.Database.schema.UspName'
J'ai examiné sysprocesses et recherché en ligne et je ne trouve pas de solution. Des idées?
{En utilisant SSMS 2014}
Merci à l'avance,
Attention: l'ajout ou la modification de colonnes risque d'entraîner la défaillance d'autres processus. Si vous voyez l'utilisation de "select *" ou "insert table select" (c'est-à-dire, ne spécifiant pas la liste des colonnes dans une instruction d'insertion), de mauvaises choses se produiront. Une trace côté serveur filtrée pour des noms de tables spécifiques est une alternative. – SMor
Merci SMou, j'utilise un environnement DEV pour comprendre le processus. Une fois que j'ai réussi à comprendre ce qu'il fait, nous allons le réécrire complètement afin de simplifier le processus et j'espérais ajouter ces colonnes pour un dépannage ultérieur. – SliderSteve