Question

L'ID utilisateur sur votre chaîne de connexion n'est pas une variable et est différente de l'ID utilisateur (peut être GUID par exemple) de votre programme. Comment journal d'audit ne vous supprime si votre ID utilisateur de chaîne de connexion est statique?

Le meilleur endroit pour ouvrir une session d'insertion / mise à jour / suppression est par les déclencheurs. Mais avec chaîne de connexion statique, il est difficile de vous connecter qui supprimer quelque chose. Quelle est l'alternative?

Était-ce utile?

La solution

Avec SQL Server, vous pouvez utiliser CONTEXT_INFO pour passer d'information à la détente.

J'utilise ce dans le code (appelé par des applications Web) où je dois utiliser des déclencheurs (par exemple, plusieurs chemins d'écriture sur la table). C'est là ne peut pas mettre ma logique dans les procédures stockées.

Autres conseils

Nous avons une situation similaire. Notre application web fonctionne toujours avec le même utilisateur de base de données, mais avec des utilisateurs logiques sur des pistes et des applications de contrôle.

On passe généralement dans l'ID utilisateur logique en tant que paramètre dans chaque procédure stockée. Pour suivre les suppressions, nous ne supprimons pas généralement la ligne, marquer juste le statut supprimé, définissez les champs LastChgID et LastChgDate en conséquence. Pour les tables importantes, où nous gardons un journal d'audit (une copie de chaque état de changement), nous utilisons la méthode ci-dessus et une copie de déclenchement de la rangée à une table de vérification, le LastChgID est déjà réglé correctement et que le déclencheur n'a pas besoin de vous inquiéter à obtenir l'ID.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top