Backup la o singura tabela

Configurare noua (How To)

Situatie

 Pentru cazurile in care avem nevoie sa facem rapid o copie la o tabela , am creat o procedura care face backup la o singura tabela, primita ca parametru. (ex: pt a avea o copie in cazul in care nu suntem siguri de un update sau de alta operatiune ce are un grad de risc. )
Procedura are un singur parametru, numele tabelei la care vrem sa facem backup.
Procedura se creaza pe baza pe care dorim sa facem backupuri, si apoi, pt simplificare si operativitate, se intra un meniul TOOLS – OPTIONS in SSMS, si de acolo alegem Keyboard, si, la mapping scheme, alegem optiunea Visual studio 2010 compatible, iar la Querry Shortcuts , la Ctrl+3 punem numele procedurii, BD_BackupTable.
Iar pentru cazurile cand dorim sa facem backup la o tabela , da-m puri si simplu dublu click pe ea, apoi CTR+3 si se face automat backup la tabela, numele backupului finnd compus din numele tabelei, si data + ora si minute.

Solutie

CREATE PROC BD_BackupTable(@tblname NVARCHAR(100))

AS

DECLARE @SQL NVARCHAR(MAX)
DECLARE @SQL2 NVARCHAR(MAX)
DECLARE @DT VARCHAR(16)

SELECT @DT = REPLACE(REPLACE(REPLACE((CONVERT(VARCHAR(16),GETDATE(),120)),’-‘,’_’),’ ‘,’_’),’:’,’_’)

SET @SQL=’SELECT * INTO ‘+@tblname+’_’+@DT + ‘ FROM ‘+@tblname
SET @SQL2 =’SELECT * FROM ‘+@tblname+’_’+@DT

EXECUTE(@SQL)
PRINT @SQL2

Tip solutie

Permanent
Etichetare:

Voteaza

(17 din 34 persoane apreciaza acest articol)

Despre Autor

Leave A Comment?