sp_helpconstraint ohne sa Rech executen

22/08/2007 - 15:59 von Lutz Elßner | Report spam
sp_helpconstraint liefert in der Spalte constraint_keys normalerweise die
Default Werte von Columns
z.B. (1) oder (newid()) oder (getdate())

Beim SQL 2000 Server kann das auch ein User lesen, der kein sa / dbo ist.

Beim SQL 2005 Server liefert die Prozedur einem "nicht-sa" auch alle Zeilen,
jedoch stehen in der Spalte constraint_keys NULL Werte an den interessanten
Stellen. Der sa sieht alles vollstàndig.

Welches Recht muss ich erteilen, dass SQL 2005 einem normalen User die
constraint_keys anzeigt?

Mir ist bekannt dass die Prozedur veraltet ist, jedoch muss die Anwendung
auch noch SQL 2000 kompatibel sein und kann jetzt nicht grundlegend
umprogrammiert werden. Der User soll aber nicht deswegen zum dbo gemacht
werden...

Lutz
 

Lesen sie die antworten

#1 Stefan Falz [MVP]
22/08/2007 - 20:03 | Warnen spam
Hallo Lutz,

"Lutz Elßner" schrieb:

sp_helpconstraint liefert in der Spalte constraint_keys normalerweise die
Default Werte von Columns
z.B. (1) oder (newid()) oder (getdate())



das tut

EXEC sp_columns '<Tabelle>'

in der Spalte "COLUMN_DEF" ebenso wie

SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '<Tabelle>'

auch.

Beim SQL 2000 Server kann das auch ein User lesen, der kein sa / dbo ist.

Beim SQL 2005 Server liefert die Prozedur einem "nicht-sa" auch alle Zeilen,
jedoch stehen in der Spalte constraint_keys NULL Werte an den interessanten
Stellen. Der sa sieht alles vollstàndig.



Das gleich gilt für sp_columns.

Welches Recht muss ich erteilen, dass SQL 2005 einem normalen User die
constraint_keys anzeigt?



Kann ich dir leider nicht genau sagen aber interessieren würde mich das auch.

Ich hab meinem Testuser mal probehalber verschiedene Rollen zugewiesen. Mit
db_ddladmin hats dann geklappt wobei das auch nicht viel besser als dbo ist :)

Falls auch noch gleich einer erklàren kann, was die Entwickler sich dabei
gedacht haben wàr das prima. Den Sinn versteh ich nàmlich ehrlich gesagt
absolut nicht.

Tschau, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

Ähnliche fragen