본문 바로가기

MSSQL

(38)
[sql] 전체, 차분, 트랜잭션로그 복구 스크립트 //전체, 차분, 트랜잭션로그 백업이 이미 되어 있다는 가정하에 구동되는 스크립트입니다. USE MASTER GO RESTORE FILELISTONLY FROM DISK='C:\Backup\Full\{{db_name}}.bak' RESTORE DATABASE {{db_name}} FROM DISK = 'C:\Backup\Full\{{db_name}}.bak' WITH RECOVERY, REPLACE GO // 백업 중 상태에서 일반 상태로 변경 RESTORE DATABASE {{db_name}} WITH RECOVERY //복구 – Sql Management 에서 GUI 로도 가능한 작업입니다.//전체 백업 복구 – c:\Backup\Full 안에 전체 백업이 있다고 가정 //WITH 옵션 – 복구 중 ..
[sql] 백업 파일 크기 줄이기 use {{db_name}}; //로그파일 백업//복구나 변경 사항이전에 백업은 필수 backup log {{db_name}} to disk='d:\Backup\{{db_name}}.trn' //로그 파일이 줄어들지 않을때(2008 이상) DECLARE @LogFileLogicalName sysname = NULL ALTER DATABASE {{db_name}} SET RECOVERY SIMPLE GO SELECT @LogFileLogicalName = [Name] FROM sys.database_files WHERE type = 1 // 검색 된 LogFileLogicalName 은 {{db_name}}_log 입니다.// 줄이고 싶은 크기는 db > 속성 > 파일 > 최초 용량 이상을 정해줘야 합니다..
[msdn] 백업,복구 관련 기본 지식 백업과 복구에 앞서 꼭 읽어야 할 내용 입니다. 방법: 데이터베이스의 복구 모델 보기 또는 변경(SQL Server Management Studio) https://technet.microsoft.com/ko-kr/library/ms189272(v=sql.105).aspx 복구 모델 개요 https://technet.microsoft.com/ko-kr/library/ms189275(v=sql.105).aspx 백업 비상 로그 백업 ***** https://technet.microsoft.com/ko-kr/library/ms179314(v=sql.105).aspx BACKUP LOG database_name TO WITH NORECOVERY 백업모델 방법: 차등 데이터베이스 백업 만들기(Transact-S..
[function] 구분자가 있는 문자열 테이블로 만들기 CREATE FUNCTION [dbo].[fn_Split]( @pSource NVARCHAR(MAX), @pSeparator VARCHAR(1))RETURNS @TAB_RETURN TABLE( ItemIndex INT, ItemValue NVARCHAR(1000))ASBEGIN DECLARE @buffer VARCHAR(MAX); DECLARE @item NVARCHAR(MAX); DECLARE @tmp INT; DECLARE @index INT; SET @index = 1; WHILE LEN(@pSource) > 0 BEGIN SET @tmp = CHARINDEX(@pSeparator, @pSource); IF @tmp > 0 BEGIN SET @item = SUBSTRING(@pSource, 1, @..
[mssql] paging limit offset DECLARE @page INT = 1DECLARE @offset INT = 5 ;WITH TempTable AS( SELECT ROW_NUMBER() OVER (ORDER BY 정렬컬럼 ) AS RowNum , * FROM Table WITH(NOLOCK) WHERE 조건)SELECT *FROM TempTableWHERE RowNum > ( CASE WHEN @page > 1 THEN ( @page - 1 ) * @offset ELSE 0 END ) AND RowNum
(String Concatenation) (Transact-SQL) 예외 케이스 SELECT rat.TargetNo , rat.TargetUniqueNo , rat.RegistType , rat.AddressType , (CASE WHEN rat.Sido LIKE '서울%' THEN '서울특별시' WHEN rat.Sido LIKE '부산%' THEN '부산광역시' WHEN rat.Sido LIKE '울산%' THEN '울산광역시' WHEN rat.Sido LIKE '대전%' THEN '대전광역시' WHEN rat.Sido LIKE '대구%' THEN '대구광역시' WHEN rat.Sido LIKE '광주%' AND rat.Sido != '광주시' THEN '광주광역시' WHEN rat.Sido LIKE '인천%' THEN '인천광역시' WHEN rat.Sido LIKE '경기%' T..