none
Автоматическое создание и отправка отчетов по базе MS SQL RRS feed

Все ответы

  • declare @Db_name varchar(100);

    select @Db_name = 'YourDBName';

    select
    s.database_name,
    m.physical_device_name,
    cast(cast(s.backup_size / 1000000 as int) as varchar(14))+' '+'MB' as bkSize,
    cast(DateDiff(second, s.backup_start_date, s.backup_finish_date) as varchar(4))+' '+'Seconds' as TimeTaken,
    s.backup_start_date,
    cast(s.first_lsn as varchar(50)) as first_lsn,
    cast(s.last_lsn as varchar(50)) as last_lsn,
    case s.[type]
    when 'D'
    then 'Full'
    when 'I'
    then 'Differential'
    when 'L'
    then 'Transaction Log'
    end as BackupType,
    s.server_name,
    s.recovery_model
    from msdb.dbo.backupset as s
    inner join msdb.dbo.backupmediafamily as m on s.media_set_id = m.media_set_id
    where
    s.database_name = @Db_name
    and m.physical_device_name like '%DIFF%'
    order by
    backup_start_date desc,
    backup_finish_date;

    Можно результат обернуть в html и выслать через dbmail.

    Можно создать отчет в SSRS и на нем создать подписку.

    Можно через SSIS создать пакет который получит результат сложит его в файл и отправит его на почту.

    Можно продолжать, покуда фантазии хватит.

    1 ноября 2017 г. 12:36