MS SQL
От: dobrik Израиль  
Дата: 17.06.02 12:06
Оценка:
est' ms sql, v nem 50-100 databases.
zapros — select name from master..sysdatabases — vozvrashaet spisok dayabases
zapros — select name from sysfiles — spisok filov tekushey database

kak i vozmozhno li napisat' zapros kotoriy vozvratit spisok vseh databases i ih filov v odnom resultate?
dobrik
Re: MS SQL
От: Toughpheeckouse Россия  
Дата: 17.06.02 12:29
Оценка:
Здравствуйте dobrik, Вы писали:

D>est' ms sql, v nem 50-100 databases.

D>zapros — select name from master..sysdatabases — vozvrashaet spisok dayabases
D>zapros — select name from sysfiles — spisok filov tekushey database

D>kak i vozmozhno li napisat' zapros kotoriy vozvratit spisok vseh databases i ih filov v odnom resultate?

Похоже одним запросом это дело не получить тк табличка sysfiles для каждой БД своя... можно получить database's primary file. оно есть в sysdatabases
Думайте сами, решайте сами...
Re[2]: MS SQL
От: dobrik Израиль  
Дата: 17.06.02 12:40
Оценка:
delo v tom chto nado poluchit' imena vseh filov (log naprimer) a on ne vsegda sootvetstvuest imeny primary file (sm. create database.....)
dobrik
Re[3]: MS SQL
От: Toughpheeckouse Россия  
Дата: 18.06.02 05:19
Оценка:
Здравствуйте dobrik, Вы писали:

D>delo v tom chto nado poluchit' imena vseh filov (log naprimer) a on ne vsegda sootvetstvuest imeny primary file (sm. create database.....)

да это все понятна... на вот процедурку которая делает то что тебе нада
тут вроде понятна, если чо поясню...

CREATE PROCEDURE SP_GETDBFILES AS
set nocount on
declare @cmd        nvarchar(279)
declare @dbname         sysname

create table #spdbfiles
(
    dbname    sysname,
    filename nchar(260)
)

declare db_names cursor for select name from master.dbo.sysdatabases
open db_names
fetch db_names into @dbname
while @@fetch_status >= 0
begin
--    if (has_dbaccess(@name) <> 1)
--        raiserror(15622,-1,-1, @name)
--    else
    begin
        select @cmd = 'insert into #spdbfiles select '+quotename(@dbname, '''') + ', filename from ' + 
            quotename(@dbname, '[') + '.dbo.sysfiles'
        exec (@cmd)
    end
    fetch db_names into @dbname
end
deallocate db_names
select * from #spdbfiles
Думайте сами, решайте сами...
Re[4]: MS SQL
От: dobrik Израиль  
Дата: 18.06.02 06:33
Оценка:
spasibo, no — nedopustimo bolshoe execution time, etot sposob probovali uzhe
dobrik
Re[5]: MS SQL
От: Toughpheeckouse Россия  
Дата: 18.06.02 06:47
Оценка:
Здравствуйте dobrik, Вы писали:

D>spasibo, no — nedopustimo bolshoe execution time, etot sposob probovali uzhe

ясна... ну можно попробывать без временной таблицы по UNION сложить запросы.... пока тока это в голову приходит... да вроде по другому ни как..
Думайте сами, решайте сами...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.