Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Proveriti iskoriscenost tabela ?

[es] :: MS SQL :: Proveriti iskoriscenost tabela ?

[ Pregleda: 1923 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

KizaBG
programer

Član broj: 169491
Poruke: 247
*.adsl-a-2.sezampro.yu.



+1 Profil

icon Proveriti iskoriscenost tabela ?30.06.2009. u 23:42 - pre 180 meseci
imam sledeci problem, pa me zanima da li ovo uopste i moze da se uradi.

baza u MS SQL 2005. Ima 50-ak tabela, i 300-ak stored procedure.

imam neke tabele, za koje mislim da se ne koriste ni u jednoj stored proceduri, ali nisam bas siguran.

da li postoji neka sistemska funkcija u MS SQL, pomocu koje mogu da vidim, da li se neka tabela, koristi u bilo kojoj od ove 300 stored procedure ?

hvala unapred .

poz.
 
Odgovor na temu

.:Marvin:.
Taurunum

Član broj: 36626
Poruke: 94
91.143.212.*



Profil

icon Re: Proveriti iskoriscenost tabela ?01.07.2009. u 07:29 - pre 180 meseci
Code:

SELECT distinct o.name, o.type_desc, p.name, p.type_desc
FROM sys.sql_dependencies d
INNER JOIN sys.objects o
    ON d.object_id = o.object_id
INNER JOIN sys.objects p
    ON d.referenced_major_id = p.object_id


Pa u WHERE uslov dodas kao p.name tabelu koja te zanima, ili kao o.name proceduru koja te zanima.
 
Odgovor na temu

mmix
Miljan Mitrović
Profesorkin muz
Passau, Deutschland

SuperModerator
Član broj: 17944
Poruke: 6042



+4631 Profil

icon Re: Proveriti iskoriscenost tabela ?01.07.2009. u 08:40 - pre 180 meseci
Pored ovoga obrati paznju na dinamicko kreiranje skripti ako ih imas u stored procedurama. Pretrazi tekstove procedura za sp_exec i analiziraj kod procedure koji formira sktriptu da vidis koje tabele se tu koriste.

Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan, sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv… - Z.Đinđić
 
Odgovor na temu

KizaBG
programer

Član broj: 169491
Poruke: 247
*.adsl-a-1.sezampro.yu.



+1 Profil

icon Re: Proveriti iskoriscenost tabela ?01.07.2009. u 09:42 - pre 180 meseci
@Marvin: hvala puno za kod. Sacuvacu poruku, da imam ako mi nekada bude zatrebalo, ali, ja imam u bazi 300 stored proc. tako da bih morao 300 puta da izvrsim ovu naredbu.

@mmix: tako je, meni to treba, nesto kao 'search' opcija u teskt editoru .. da ta opcija/ugradjena sql funkcija 'protrci' kroz sve stored procedure, i da mi javi da li se u nekoj od njih nalazi ime tabele koju zadam.

pozdrav i hvala za pomoc
 
Odgovor na temu

Fedya
Fedor Hajdu
Solution Architect
Emaratech
Dubai, UAE

Član broj: 28246
Poruke: 790
82.117.202.*

Jabber: fedya@elitesecurity.org
Sajt: devtechgroup.com


+34 Profil

icon Re: Proveriti iskoriscenost tabela ?01.07.2009. u 10:11 - pre 180 meseci
Marvin ti je dao dobar odgovor, samo nisi probao

Ako hoces da proves da li se neka tablea koristi u procedurama prosiri njegov upit sa "WHERE p.Name = 'imeTabele'" i dobices kao rezultat sve storovane koje koriste tu tabelu. (ili prasan result set ako se tabela ne koristi).
Znaci uradice ti search.

Ali, sql server nema podrsku za pretrazivanje celog teksta tako da kod koji je Marvin dao vraca samo direktne zavisnosti o odredjenu tabelu (vidis da pretrazuje sys.sql_dependencies). S obzirom da je sistem toliko slozen kao sto kazes (300 sprocova) pretpostavljam da koristite source kontrolu za procedure, tako da bi jednostavan windows search u tom folderu trebalo da ti vrati tacniji rezultat. Ako nemate source kotrolu, a pri tome korisite dinamicki generisane upite, imate vecih problema od toga da li neka tabla stoji neiskoristena i ja se ne bih upustao u brisanje bilo cega.
Every hamster has his day.
 
Odgovor na temu

KizaBG
programer

Član broj: 169491
Poruke: 247
*.adsl-a-1.sezampro.yu.



+1 Profil

icon Re: Proveriti iskoriscenost tabela ?01.07.2009. u 10:50 - pre 180 meseci
BRAVO !! To je ono sto mi treba.

Hvala Fedya (sto si imao vise strpljenja od mene da procitas Marvinov post) i hvala Marvinu !!!! na resenju problema.

pozdrav svima, svako dobro
 
Odgovor na temu

[es] :: MS SQL :: Proveriti iskoriscenost tabela ?

[ Pregleda: 1923 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.