본문 바로가기

MSSQL

(38)
[mssql] 트랜잭션로그 백업하기(SSMS) 1. DB 탐색기 > 태스크 > 백업 2. 페이지 선택 > 일반 > 백업유형 > 트랜잭션로그 선택 3. 트랜잭션 로그 크기 줄이기트랜잭션로그 크기 줄이기
[mssql] 테이블 컬럼으로 DECLARE 문 만들기 USE {{DB NAME}}; SELECT 'DECLARE @Kr_' + COLUMN_NAME + ' ' + UPPER(DATA_TYPE) + ( CASE WHEN CHARACTER_MAXIMUM_LENGTH IS NOT NULL AND CHARACTER_MAXIMUM_LENGTH > 0 THEN '(' + CAST(CHARACTER_MAXIMUM_LENGTH AS VARCHAR) + ')' ELSE '' END ) + ' = NULL' FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '{{TABLE NAME}}' 결과 DECLARE @Kr_address NVARCHAR(200) = NULL DECLARE @Kr_detailAddress NVARCHAR(200)..
[mssql][웹서비스호출] 구성 요소 'Ole Automation Procedures'이(가) SQL Server 보안 구성의 일부로 해제되었으므로 이 구성 요소의 프로시저 'sys.sp_OACreate'에 대한 액세스가 차단되었습니다. 시스템 관리.. 구성 요소 'Ole Automation Procedures'이(가) SQL Server 보안 구성의 일부로 해제되었으므로 이 구성 요소의 프로시저 'sys.sp_OACreate'에 대한 액세스가 차단되었습니다. 시스템 관리자는 sp_configure를 사용하여 'Ole Automation Procedures'의 사용을 활성화할 수 있습니다. 'Ole Automation Procedures' 활성화 방법은 SQL Server 온라인 설명서의 "노출 영역 구성"을 참조하십시오. 관련 문서 https://docs.microsoft.com/ko-kr/sql/relational-databases/system-stored-procedures/ole-automation-stored-procedures-transact..
[mssql] 특정 그룹의 첫번째만 가져올때 SELECT {{컬럼들}} FROM ( SELECT RANK() OVER(PARTITION BY {{그룹으로 묶을 키 컬럼}} ORDER BY {{그룹안에서 정렬할 컬럼}} ) AS rowNum , {{컬럼들}} FROM {{대상 테이블}} AS f WITH(NOLOCK, INDEX({{인덱스}})) WHERE {{조건들}} ) AS a WHERE a.rowNum = 1
[mssql] REPLICATE + SUBSTRING 조합으로 이메일 주소 가리기 mssql 에서 특정문자열 사이에 문자를 채울때나 바꿀때는 REPLICATE + SUBSTRING 조합을 애용하고 있습니다. 아래 예제는 이메일 주소의 @ 앞의 몇자를 * 으로 가리는 예제입니다. DECLARE @email VARCHAR(500) = 'abcd1234@naver.com' SELECT LEFT(@email, 2) + REPLICATE('*', CHARINDEX('@', @email, 1) - 2) + SUBSTRING(@email, CHARINDEX('@', @email, 1), LEN(@email)) -- ab*******@naver.comdemo : http://rextester.com/TJCA78904링크 : [mssql] substring 문자열자르기
[mssql] 숫자에 콤마 붙이기 숫자형에 3자리마다 콤마를 붙이는 스칼라 함수 입니다. CREATE FUNCTION [dbo].[fn_intMoneyWithComma] ( @money INT ) RETURNS VARCHAR(50) AS BEGIN DECLARE @tempMoneyText VARCHAR(50) = NULL SET @tempMoneyText = REPLACE(CONVERT(VARCHAR(50), CAST(@money AS MONEY), 1) , '.00', '') RETURN @tempMoneyText END GO demo : http://rextester.com/GFD80572
[mssql] convert yyyyMMddhhmmss string to datetime DECLARE @stringDatetime CHAR(14) = '20160823160000' -- yyyyMMddhhmmss DECLARE @convertedDatetime DATETIME = NULL SELECT @convertedDatetime = CAST((SUBSTRING(@stringDatetime,1,4) + '-' + SUBSTRING(@stringDatetime,5,2) + '-' + SUBSTRING(@stringDatetime,7,2) + ' ' + SUBSTRING(@stringDatetime,9,2) + ':' + SUBSTRING(@stringDatetime,11,2) + ':' + SUBSTRING(@stringDatetime,13,2)) AS DATETIME) SELECT @c..
[mssql] substring 문자열 자르기 DECLARE @addressCode CHAR(10) = '1147010100' SELECT SUBSTRING(@addressCode, 1,2) AS sidoCode -- 11 , SUBSTRING(@addressCode, 3,3) AS gugunCode -- 470 , SUBSTRING(@addressCode, 6,3) AS dongCode -- 101 , SUBSTRING(@addressCode, 9,2) AS riCode -- 00 demo : http://rextester.com/DHEU53218 mssql 은 시작점이 javascript 나 기타 언어들과 다르게 1부터 시작한다. 링크 : javascript 문자열 자르기