23. april 2007 - 13:49Der er
10 kommentarer og 1 løsning
Lokal SQL Server information
Hej...
Har lige en række spørgsmål som jeg slev lige sider og leder efter svar på... men tænkte det kunne være nogen her inde kunne være hurtigere til at browse google end mig og gennerelt bedre til at søge :P...
Det jeg lige står og skal bruge er information omkring at hente information ud af en SQL Server, ikke fra en tabel i en eller anden data base men mere overordnet... hvilke servere er der tilgængelige på "local", hvilke databaser indeholder de...
Analysere Tables, Stored Procedures, Views ect. (Hvilke er der, hvad har de af kolloner / parametre osv )... (Navne på Tabeller, Views og SP'er er jo til at slå op i en eller anden tabel, kan sQ bare ikke lige huske hvordan, og om man får alt det yderligere info med)....
Smid endelig links, info... alt relaterende... Takker
SELECT * FROM INFORMATION_SCHEMA.SCHEMATA SELECT * FROM INFORMATION_SCHEMA.TABLES SELECT * FROM INFORMATION_SCHEMA.COLUMNS SELECT * FROM INFORMATION_SCHEMA.VIEWS SELECT * FROM INFORMATION_SCHEMA.ROUTINES
SP_DATABASES returnere jo uheldigvis også System Databaser, jeg er egentlig kun interesseret i burgerdatabaser...
kigger man i sys.databases kan man jo finde dem der, og udskille dem på owner_id måske... er jeg lidt usikker på hvor vidt er godt nok... hvis en bruger database kan gå hen og have samme owner id som en system database duer det jo ikke...
Jeg tvivler på at der er en god måde at skelne mellem system og user databases udover at have en liste.
Der er nemlig ikke noget som forhindrer at man smider user tabeller i master (ihvertfald ikke i SQLServer softwaren - DBA på databasedn vil formentligt gå amok).
Well... det er ligemeget som det ser ud nu, for med SMO går det hele faktisk lidt nemmere i og med man kan oprette et server object, derpå har man så Databaser liggende som hver har en "IsSystemObject", må gå ud fra at udviklerne hos MS selv har styr på hvad der er hvad...
Og eller nej... syntes der er store performance udsvingninger på det...
Prefetch tager nogle gange 1-2 sekunder pr. data base... andre gange 30-60 sekunder... o.O... men man kan sige at det i langt de fleste tilfælde drejer sig om en gang når en service starter...
Smider du lige et svar... for svaret er jo rigtigt selv om det ikke var den vej jeg gik... (Den vej jeg gik er jo bare en .NET Wrapper omkring alle de Stored Procedures du nævner)...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.