Hallo zusammen,
ich brauche mal eine Idee.
Grundsätzliches Problem:
Es existiert eine Tabelle mit vielen Daten auf dem SQL-Server (2008 R2). Die Daten sollen mehreren Personen per ODBC in Excel zugänglich gemacht werden. Problem: Jede Person darf nur bestimmte Datensätze sehen, es gibt aber auch Personen die mehr bzw. alles sehen dürfen. (Das ganze natürlich dynamisch, d.h. die Berechtigungen können sich ändern.)
Bisher habe ich dieses Problem dadurch gelöst, dass ich die ursprünglichen Daten ganz einfach vervielfältigt, mit einer weiteren Spalte (UserID), gespeichert habe. Alternativ hatte ich auch schon mal die Vervielfältigung in einer View, durch die ausgiebige Verwendung von UNION ALL, erreicht ohne dass ich in einer Tabelle die Daten speichere. In der MS-Query-Abfrage, welche die Daten mit Excel verknüpft, brauchte man dann einfach nur den entsprechenden Filter einzubauen, und es werden nur noch die entsprechenden Daten angezeigt.
Konkretes Problem:
Nun ja, bei einer einzigen Tabelle, die auch nicht ganz so groß ist, kann man das ja mal so machen wie oben beschrieben. Leider möchte ich das jetzt aber auf eine ganze Datenbank anwenden. D.h. es wird alle Tabellen betreffen. Die Tabellen sind zu allem Überfluss auch noch riesengroß, da die Quelldaten aus einem ERP-System kommen.
Kann mir jemand verraten, wie ich diese Problematik am besten angehe?
Danke für jeden brauchbaren Hinweis.
MfG
Stephan