dbo.restore_my_db

Description

Properties

Name Value
ANSI Nulls ON

True

Quoted Identifier ON

True

Encrypted

False

Execute As
Assembly

Parameters

Name Data Type Length Description
@PARAMETER xml -1

SQL Script

SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
create procedure dbo.restore_my_db
@PARAMETER xml=''
with  
---XencX---encryption,
EXECUTE AS CALLER

as
declare @pemisah varchar(2)
set @pemisah=CHAR(13) + CHAR(10)
declare @resultX varchar(3000)

declare @XmlSts xml
declare @raw xml
declare @xStsnoheader varchar(2),
  @xStsno varchar(2),
  @xStsdes varchar(4000)
  
set @xStsnoheader='08'
set @xStsno='00';
set @xStsdes='sukses'

set nocount on
 
 declare @tmp varchar(500)  
   , @path varchar(500)  
   ,@key varchar(1000)
   ,@silent bit 
    
 SELECT
  @path=isnull(tempTable.item.value('path[1]', 'varchar(500)') ,''),
   @key= tempTable.item.value('key[1]', 'varchar(255)')   ,
   @silent= isnull(tempTable.item.value('silent[1]', 'bit'),0)  
  FROM @PARAMETER.nodes('param/field')  tempTable(item)
   
 --CHECK_APAKAH_BISA_BACKUP
 if    @key='adiTioPriambodoCumi02ti0K0s0ng' COLLATE SQL_Latin1_General_CP1250_CS_AS 
  begin
   

   declare @motherboard_id varchar(255)
     declare @XMLValidString varchar(max)
  SELECT     
  TOP (1)
   @XMLValidString=isnull(CONVERT(varchar(MAX),DecryptByPassphrase('Ap4TanyaT4nya MauT4uAj4 4h'    , set_30)),'')   ,
  @motherboard_id=isnull(CONVERT(varchar(MAX),DecryptByPassphrase('Ap4TanyaT4nya MauT4uAj4 4h'    , set_23)),'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX')   
   FROM         dt_app_set
      set @XMLValidString =isnull(substring(@XMLValidString,len(@motherboard_id)+1,LEN(@XMLValidString)-LEN(@motherboard_id)+1) ,'')
  declare  @XMLString xml 
  set @XMLString=@XMLValidString
 
  declare @bisa_backup bit,
  @key_backup varchar(255),
  @password_backup varchar(255)



   SELECT top 1 
    @key_backup= isnull(tempTable.item.value('key_backup[1]', 'varchar(255)'),'') ,
   @bisa_backup= isnull(tempTable.item.value('enable_backup[1]', 'bit'),0) ,
   @password_backup= isnull(tempTable.item.value('password_backup[1]', 'varchar(255)'),'') 
  FROM @XMLString.nodes('module/backup_setting/r')  tempTable(item)

  

  if isnull(@bisa_backup,0) =0
  begin
    set @xStsno='06'
    set @xStsdes='Module Backup diaktifkan'
    goto g
 
  end


 declare @db_name varchar(255)
 declare @db_name_file varchar(255)
 set @db_name = DB_NAME()
 set @db_name_file=replace(replace(replace(replace(convert(varchar(255),getdate(),121) ,'-',''),' ','_'),':',''),'.','_')
 if @path =''
 set @db_name_file=  @db_name + '_' + @db_name_file + '_' + isnull(@key_backup,'')
 else 
 set @db_name_file= @path + @db_name + '_' + @db_name_file + '_'  + isnull(@key_backup,'')

 begin try
 exec (
' BACKUP DATABASE ['+ @db_name + 
'] TO DISK = N'''+  @db_name_file +  
'.bak'' WITH NOFORMAT, NOINIT, NAME = N''' + @db_name + 
'-Full Database Backup'', SKIP, STATS = 10; ');
  set nocount off 

  set @raw=(
  select  1 as rID ,
   @db_name as r1 ,
   @db_name_file + '.bak' as r2,
   @password_backup as r3 for xml path('xrow') 
   )
 
 END TRY  
 BEGIN CATCH
  set @xStsno='88'
  set @xStsdes= cast (ERROR_NUMBER() as varchar(255)) + ' : ' +   ERROR_MESSAGE() 
 END CATCH
 end
 else
 begin
   set @xStsno='06'
   set @xStsdes='invalid key'
   goto g
   end 
g:
set @XmlSts=(select @xStsnoheader + @xStsno as 'no', @xStsdes as 'des' for xml path('sts'))
if @silent=0 
begin
 select  CAST( (select @XmlSts,isnull(@raw ,'')   for xml path ('result')
 )  as XML)  as dt

end

----GO
------ ----------------------------
------ CREATE: Backup Database [dbo].[restore_my_db] Script Date: 27-11-2012
------ ----------------------------
----declare @xml xml
----set @xml='adiTioPriambodoCumi02ti0K0s0ng'
----exec restore_my_db @xml
  
----GO
GO

Depends On

1

Used By

No items found