Adam Woźniak

Adam Woźniak software architect
and developer

Temat: IDE indeksujące / przeszukujące pliki źródłowe SQL

Nawiązując do innej dyskusji (tutaj jednak otworzę nowy wątek):

> xxx:
> [..] co się stanie kiedy pojawi się
> nowe wymaganie biznesowe. Nie chiałbym być w skórze programisty
> który musi przeczesać te setki procedur, widoków, dziesiątki
> trigerów i bóg wie jeszcze czego aby móc je spełnić.

Pytanie:
Czy są środowiska IDE, które mając załadowane wiele plików SQL (procedury, definicje widoków i trigerów, itp.) potrafi wyszukać mi w takich źródłach SQL-owych następujące rzeczy:

1.
Odwołania do kolumny C tabeli T.

2.
Tak jak pkt. 1, ale z możliwością zawężenia przeszukiwania do zapytań interesujących nas rodzajów (np. tylko SELECT-y, tylko UPDATE, itd.).

3.
Załóżmy, że kolumna COL tabeli TAB może mieć tylko dwie wartości typu CHAR: Y i N.
Chciałbym znaleźć np. wszystkie zapytania SQL, które w sobie porównują tę kolumnę do wartości 'Y' (np. SELECT * FROM TAB WHERE TAB.COL <> 'Y').

Ktoś zna takie narzędzia? Może coś polecić?

Pozdrawiam,
Adam

konto usunięte

Temat: IDE indeksujące / przeszukujące pliki źródłowe SQL

Ja znam Visual Studio 2008 Database Edition lub Team Suite. Tworzy się projekt bazodanowy, który zasysa cała scheme z bazy (łącznie z fukcjami, typami i procedurami itp.) i wtedy dowolna zmiana np. nazwy kolumny powoduje jej zmianę we wszystkich procedurach składowanych i innych obiektach, które się do owego obiektu odwołują. Oczywiście przy dynamicznym SQL nie działa. Wyszukiwanie jest po Ctrl-F :). Jednak moje doświadczenia nie są z nim duże - bawiłem się tym trochę przy malutkich projektach oraz widziałem kilka prezentacji. W takiej skali działało.

Do tej pory najlepszym sposobem jaki ja znalazłem jest po prostu brak logiki po stronie bazy a w procedurach realizować tylko zwykłego CRUD'a - wtedy łatwo jest zlokalizować zagrożone procedury oraz łatwo do nich napisać testy jednostkowe.

konto usunięte

Temat: IDE indeksujące / przeszukujące pliki źródłowe SQL

Adam Woźniak:
Nawiązując do innej dyskusji (tutaj jednak otworzę nowy wątek):
xxx:
[..] co się stanie kiedy pojawi się nowe wymaganie biznesowe. Nie chiałbym być w skórze programisty który musi przeczesać te setki procedur, widoków, dziesiątki trigerów i bóg wie jeszcze czego aby móc je spełnić.

Pytanie:
Czy są środowiska IDE, które mając załadowane wiele plików SQL (procedury, definicje widoków i trigerów, itp.) potrafi wyszukać mi w takich źródłach SQL-owych następujące rzeczy:

1.
Odwołania do kolumny C tabeli T.

2.
Tak jak pkt. 1, ale z możliwością zawężenia przeszukiwania do zapytań interesujących nas rodzajów (np. tylko SELECT-y, tylko UPDATE, itd.).

3.
Załóżmy, że kolumna COL tabeli TAB może mieć tylko dwie wartości typu CHAR: Y i N.
Chciałbym znaleźć np. wszystkie zapytania SQL, które w sobie porównują tę kolumnę do wartości 'Y' (np. SELECT * FROM TAB WHERE TAB.COL <> 'Y').

Ktoś zna takie narzędzia? Może coś polecić?

wraz z SQL SERVER dostarczone jest Menagment Studio

ma coś takiego jak View Dependiences (pod prawoklikiem na jakimś obiekcie)

fajny jest też EMS SQL Manager for SQL Server - tyle że płatny
Jest też TOAD, ale osobiście go nie używałem więc się nie wypowiem

co do wyszukiwań niestandardowych gdzie co występuje to można sobie napisać select-a który coś takiego zrobi. wykorzystuje się do tego tabele systemowe

UWAGA: opisane funkcje będą działać jak SQL będzie w bazie danych w postaci jakiegoś obiektu: procedura, trigger, widok, funkcja

Następna dyskusja:

MS SQL - odswiezanie danych...




Wyślij zaproszenie do