Universo do Conhecimento
“Comece fazendo o que é necessário, depois o que é possível e, de repente, você estará fazendo o impossível.”
"Ninguém pode voltar atrás e fazer um novo começo mas qualquer um pode começar agora e fazer um novo fim."


 Downloads Mapa do Site 2 visitantes on-line 

 Login
   
    
 Lembrar de mim
Registro
Esqueceu sua senha?

 Home
 :: Home

 Desenvolvimento
 :: ADO
 :: ASP
 :: C#
 :: HTML
 :: JAVA SCRIPT
 :: VB.Net

 Banco de Dados
 :: SQL SERVER

 Interação
 :: Anuncie
 :: Fale conosco

 Serviços
 :: Contratos

 Diversão
 :: Jogos

 Colunas
 :: ARTIGOS

 Enquete
Qual a sua linguagem preferida ?
35% ASP (VbScript)
14% PHP
8% JSP
10% VB.Net
33% C#

 Buscar no site
  

 CERTIFICAÇÃO
LINKS

 
 Home
 Stored Procedure Backup.
Script de Store Procedure para Backup.

Estou postando uma store procedure de Backup.
Essa store procedure tem que ser salva na base master.

USE [master]
GO
/****** Object:  StoredProcedure [dbo].[spBackup]    Script Date: 03/04/2008 10:23:02 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER OFF
GO
--Para Executar a proc(Caminho,BASE,NºDias que vai armazear
ALTER PROCEDURE [dbo].[spBackup](@PATH VARCHAR(500), @DATA_BASE VARCHAR(100), @NDIAS INT)
--WITH ENCRYPTION
AS

SET NOCOUNT ON

--[ DECLARAÇÃO DAS VARIAVÉIS ]
DECLARE @FileName VARCHAR(500)
DECLARE @FileSystem INT
DECLARE @DATA_CRIAR VARCHAR(40)
DECLARE @DATA_BASE_DEVICE VARCHAR(70)
DECLARE @DATA_BASE_CAMINHO VARCHAR(150)
DECLARE @Contador int 
DECLARE @NumUltimoBkp VARCHAR(3)

--[ CRIA TABELA TEMPORARIA ]
CREATE TABLE #DIR(
 [id] [int] IDENTITY(1,1) NOT NULL,
 [filename] VARCHAR(200) NOT NULL,
 [depth] int NOT NULL,
 [file] int NOT NULL
)

INSERT #DIR EXEC  Master.dbo.xp_dirtree @PATH,1,1

Select @NumUltimoBkp = (Select IsNull(MAX(SUBSTRING([filename],1,2)),0) From #DIR)

If(@NumUltimoBkp = 0)
 Begin
  Set @NumUltimoBkp = 1
 End
else
 Begin
  Set @NumUltimoBkp = @NumUltimoBkp + 1
 End

--[ SETA UM VALAOR PARA AS VARIAVÉIS ]
set @NumUltimoBkp  = RTRIM(REPLICATE('0',2-LEN(@NumUltimoBkp)) + CONVERT(CHAR, @NumUltimoBkp))
SET @DATA_CRIAR = @NumUltimoBkp
SET @DATA_BASE_CAMINHO = @PATH+@DATA_CRIAR+'_'+@DATA_BASE+'.bak'
SET @DATA_BASE_DEVICE = @DATA_BASE+'_DEVICE'

BEGIN

 --[ VERIFICA SE JÁ EXISTE UM DEVICE PARA O BANCO, SE SIM APAGA ]
 IF EXISTS (SELECT NAME FROM master.dbo.sysDevices WHERE NAME = @DATA_BASE_DEVICE)
  EXEC  Master.dbo.SP_DROPDEVICE @DATA_BASE_DEVICE
 
 
 --[ CRIA UM DEVICE PARA O BANCO ]
  EXEC  Master.dbo.sp_addumpDevice 'DISK', @DATA_BASE_DEVICE, @DATA_BASE_CAMINHO
 
 
 --[ FAZ O BACKUP DO BANCO ]
  BACKUP DATABASE @DATA_BASE TO @DATA_BASE_DEVICE
 
 
 --[ APAGA O DEVICE DO BANCO ]
  EXEC  Master.dbo.sp_dropDevice @DATA_BASE_DEVICE

 --####################################################
 --[ APAGA OS BACKUPS ANTIGOS ]

  EXEC Master.dbo.sp_OACreate 'Scripting.FileSystemObject', @FileSystem OUT

  Select @Contador = (Select Count(id) From #DIR)

  IF @Contador >= @NDIAS
   Begin
    DECLARE ELIMINA CURSOR FOR
    select Top((@Contador + 1) - @NDIAS) [filename] from #dir where [file]=1 and [depth]=1
    and right([filename],3) = 'bak'
    --and id between 1 and @NDIAS
    Order by SUBSTRING([filename],1,2) asc

    OPEN ELIMINA
    FETCH NEXT FROM ELIMINA INTO @FileName
    WHILE @@FETCH_STATUS = 0
    BEGIN
      set  @FileName = @PATH+@FileName
      EXEC Master.dbo.sp_OAMethod @FileSystem, 'DeleteFile', NULL, @FileName

      FETCH NEXT FROM ELIMINA INTO @FileName
    END
    CLOSE ELIMINA
    DEALLOCATE ELIMINA
    EXEC Master.dbo.sp_OADestroy @FileSystem
   End
  DROP TABLE #DIR

 --#########################################

END

SET NOCOUNT ON

[10/12/2007 09:21 - Fabrizio Gianfratti]

 Imprimir Enviar para um amigo Dê sua opinião

 
 BUSCAR NO SITE
Busca :

 WebMail
Email :
Senha :
 
TRADUTOR ONLINE

 Fabrizio Gianfratti

Fabrizio Gianfratti - Clique para visualizar

 Artigos + recentes
Dicas para programar melhor
04/10/2007
Listar drivers da maquina do cliente
04/01/2007
Carro no Labirinto
10/11/2006
Dangerous Dave
10/11/2006
Calculadoras financeiras
24/10/2006
Função que cria Array(Vetor) automaticamente
16/09/2005
JavaScript - Funções de arrays
06/09/2005
JavaScript - Funções matemáticas
06/09/2005
Trabalhando com Cursores no SQL SERVER
31/05/2005
Joguinho da velha
02/02/2005

 Top Páginas
 :: ASP
 :: Home
 :: JAVA SCRIPT
 :: SQL SERVER
 :: ARTIGOS

 Downloads
 :: Icones Web - 4.800 imagens de Icones (15444)
 :: Pague com atraso (533)
 :: Source Edit (357)
 :: Outlook Express Minimizado (305)
 :: Color Cop (300)

 Arquivo
 :: Dicas para programar melhor 
 :: Calculadoras financeiras 
 :: Função que cria Array(Vetor) automaticamente 
 :: JavaScript - Funções de arrays  

Gianfratti.com - All right reserved