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?
delo v tom chto nado poluchit' imena vseh filov (log naprimer) a on ne vsegda sootvetstvuest imeny primary file (sm. create database.....)
Здравствуйте 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
spasibo, no — nedopustimo bolshoe execution time, etot sposob probovali uzhe