sql >> Databáze >  >> RDS >> Sqlserver

Oprávnění k dotazování dbo.sysobjects

Za prvé - měli byste použít sys.objects místo dbo.sysobjects. dbo.sysobjects je konstrukce SQL 2000, která je pouze v SQL 2008 z důvodů zpětné kompatibility. sys.objects obsahuje řádek pro každý uživatelsky definovaný objekt v rozsahu schématu, který je vytvořen v databázi, takže byste nemuseli svůj dotaz vůbec filtrovat. sys.all_objects je nadmnožina, která obsahuje systémové i uživatelské objekty.

Za druhé – na straně oprávnění – v SQL Server 2005 a novějších verzích je viditelnost metadat v zobrazeních katalogu omezena na zabezpečená data, která uživatel buď vlastní, nebo ke kterým má uživatel nějaké oprávnění. Takže vašemu uživateli bude muset být uděleno určité oprávnění k položkám, které hledá. Udělení DEFINICE ZOBRAZENÍ uživateli na schématu (schématech) v databázi by umožnilo fungování dotazu bez udělení přístupu k jakýmkoli datům.




  1. MySql s chybou JAVA. Poslední paket úspěšně odeslaný na server byl před 0 milisekundami

  2. Odvolání neúspěšné migrace Rails

  3. Správa dat pomocí Pythonu, SQLite a SQLAlchemy

  4. Filtrujte výsledek MySQL v Delphi