2008-09-29 15 views
5

Moje codzienne IDE to Eclipse, które ma wspaniałą funkcję otwartego zasobu (CTRL + SHIFT + R lub Nawiguj> Otwórz zasoby), która pozwala użytkownikowi wyszukiwać pliki/zasoby w wielu projektach.W SQL Server Management Studio mogę wyszukiwać zasoby w wielu bazach danych?

Nie mogę znaleźć podobnej funkcji w SQL Server Management Studio, czy istnieje?

+0

Masz na myśli, jak szukając nazwy kolumny przez wszystkich tabel w db? – Jody

+0

Jakiej wersji programu SQL Server używasz? –

+1

Używam programu SQL Server 2005 i myślałem o procedurach składowanych, tabelach, widokach itp., Ale kolumny też byłyby dobre! –

Odpowiedz

3

Można wyszukiwać obiekty w bazie danych SQL przy użyciu informacji o schemacie Widoki http://msdn.microsoft.com/en-us/library/ms186778.aspx Jest jedna na tabele, kolumny, funkcje, sprocs itp

select * from INFORMATION_SCHEMA.routines gdzie ROUTINE_DEFINITION jak „% xp% _”

0

Mam nadzieję, że ktoś ma lepszą odpowiedź niż ja. W przeszłości użyłem CURSORa do przeszukiwania wszystkich baz danych i wstawiania wyników do tabeli tymczasowej. Mógłbym wtedy wybrać z tabeli tymczasowej i pokazać wyniki.

Nie mam już tego kodu. Jeśli nikt nie wymyśli lepszej odpowiedzi, wrócę i zredaguję to z prawdziwym kodem. Sądzę, że za to będzie DMV. Ktoś?

1

Nie. Nie ma domyślnego mechanizmu w SMS-ach, aby móc przeszukiwać projekty.

1

można użyć sp_MSforeachdb tak:

sp_MSforeachdb 'SELECT * FROM ?.INFORMATION_SCHEMA.routines WHERE ROUTINE_TYPE = ''PROCEDURE''' 

powyższy wybiorą wszystkich procedur krzyżuj wszystkie bazy danych i zwracaj je w różnych zestawach wyników. Korzystając z różnych widoków, możesz także wybierać tabele, kolumny itd.