Je voudrais écrire une fonction (ou procédure stockée) qui me permettrait automatiquement d'identifier les enregistrements responsables d'une viloation de clé primaire.
Je m'explique..
Je voudrais passer le nom d'une table, ainsi que le (ou les) colonnes que j'utilise comme clé(s) primaire comme arguments et ressortir les enregistrements qui prevoquent un conflit de clé primaire.
Ex:
Table T
--------
Col1...Col2........Col3
--------------------
Jean...Dujardin....10
Jean...Dujardin.....5
Bob.....Dupont.....22
Tom....Dupont.....22
si je veux Col2 soit une clé primaire,
My_function(T,Col2) retournerait:
--------------------
Bob....Dupont......22
Tom...Dupont......22
si je veux que le couple [Col1,Col2] soit ma clé primaire,
My_function(T,Col1,Col2) retournerait:
---------------------
Jean...Dujardin.....10
Jean...Dujardin.....5
..ainsi de suite
Le code sql pour chaque cas - séparément - est assez simple, mais comment traduire ceci en fonction générique??
Merci ...
Partager