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.backup_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
GO
create procedure dbo.backup_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
Depends On
1Used By
No items found