본문 바로가기

반응형

프로그래밍/MSSQL 정리필요

(22)
[DB_MSSQL] PWDENCRYPT, PWDCOMPARE, HASHBYTES (암호화) 데이터를 암호화해보자 1. PWDENCRYPT 암호화 PWDENCRYPT('암호화할 문자') 암호비교 SELECT PWDCOMPARE('비교 대상 문자', '암호화된 Hash값') PWDENCRYPT는 단방향 암호화 방식의 함수로 복호화가 되지 않는 함수다.또한, 동일한 문자임에도 불구하고 새로운 Hash값을 제공한다. SELECT PWDENCRYPT('123') 즉, 위의 쿼리를 실행해서 결과를 보면 실행할때 마다 매번 다른 결과의 Hash값을 볼 수 있다.그렇다면, '123'이라는 문자와 '123'이 암호화된 데이터와 동일한지 어떻게 알 수 있을까? 이때 사용하는 함수가 바로 PWDCOMPARE다. 예제 PWDENCRYPT 함수를 이용하여, 123이라는 문자를 암호화해보자 DECLARE @pwd VA..
[DB_MSSQL] TRY CATCH / ERROR / XACT_STATE (오류 처리) TRY CATCH을 이용하여 오류를 처리해보자 BEGIN SET NOCOUNT ON; SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED; BEGIN TRY BEGIN TRAN /* 쿼리 작업 */ SELECT '성공' COMMIT TRAN; END TRY BEGIN CATCH DECLARE @ErrorNumber INT DECLARE @ErrorSeverity INT DECLARE @ErrorState INT DECLARE @ErrorProcedure NVARCHAR(MAX) DECLARE @ErrorLine INT DECLARE @ErrorMessage NVARCHAR(MAX) SELECT @ErrorNumber = ERROR_NUMBER(), -- 오류 번호 @E..
[DB_MSSQL] 월 말일 날짜 가져오기 날짜 관련 함수를 이용해서 특정 월의 말일 날짜를 가져와보자 SELECT CONVERT(VARCHAR(10), DATEADD(MONTH, 1, GETDATE()) - DAY(GETDATE()), 23) GETDATE() : 오늘 날짜 (작성일 기준 2017년 5월 8일)즉, 5월의 말일 날짜를 가져오는 쿼리이다. GETDATE() 대신 '2017-04-03', '2017-07-01' ... 등 특정 날짜를 넣어주면해당 월의 말일 날짜를 가져온다.
[DB_MSSQL] 정규식을 사용하여 특수문자를 포함하고 있는 로우 출력 LIKE 정규식을 사용하여 특정 컬럼에 특수문자를 포함하고 있는 행을 출력해보자 SELECT * FROM 테이블명 WHERE 컬럼명 LIKE '%[^0-9a-zA-Z가-힣]%' 예제 WITH TEST (col1) AS ( SELECT 'ABC' UNION ALL SELECT '%%^#' UNION ALL SELECT '135' UNION ALL SELECT '2123%#' UNION ALL SELECT 'ad4#@%' ) SELECT * FROM TEST 다음의 값을 가진 테이블이 있다. 여기서 특수문자를 포함하고 있는 행만 출력해보자. WITH TEST (col1) AS ( SELECT 'ABC' UNION ALL SELECT '%%^#' UNION ALL SELECT '135' UNION ALL SELECT ..
[DB_MSSQL] 실행 결과를 표 형태/텍스트로 표시, 파일로 저장해보자 실행 결과를 표 형태, 텍스트리스트 형태로 출력해보자 Ctrl+D 누른 후 F5(실행) 단축키를 누르면 아래와 같이 표 형태로 결과가 출력된다. Ctrl+T 누른 후 F5(실행) 단축키를 누르면 아래와 같이 텍스트 형태로 결과가 출력된다. 쿼리 → 결과 처리 방법 → 텍스트로 결과 표시 (Ctrl+T)쿼리 → 결과 처리 방법 → 표 형태로 결과 표시 (Ctrl+D)쿼리 → 결과 처리 방법 → 파일로 결과 저장 (Ctrl+Shift+F)

반응형