전체 글
-
MSSQL 테이블 확인 TipDatabase 2020. 11. 12. 16:24
SP_DEPENDS'테이블명'--테이블종속성확인(type에서 어디에 사용되어 종속되는지 알수 있다) SP_HELPCONSTRAINT '테이블명'--테이블제약조건확인 SP_HELPINDEX'테이블명'--테이블인덱스확인 --테이블을 사용하는 프로시저 검색 SELECT * FROM sys.procedures WHERE OBJECT_DEFINITION(OBJECT_ID) LIKE '%테이블명%' --테이블을 사용하는 트리거 검색 SELECT * FROM sys.triggers WHERE OBJECT_DEFINITION(OBJECT_ID) LIKE '%테이블명%'
-
MSSQL MERGE 예제Database 2020. 11. 10. 17:24
MERGE 단일 문에서 여러 DML(INSERT, UPDATE, DELETE) 작업을 수행할 수 있다. 즉, 여러 개의 개별 DML문을 단일 문으로 대체할 수 있다. 작업이 하나의 문 내에서 수행되면서, 데이터가 처리되는 횟수가 최소화되고 쿼리 성능이 향상된다. MERGE 변경될테이블명 AS A USING (SELECT 컬럼명 FROM 기준테이블명) AS B ON (A.컬럼명 = B.컬럼명 AND A.컬럼명 = B.컬럼명) WHEN MATCHED AND 조건 THEN INSERT (A.컬럼명) VALUES(B.컬럼명) WHEN NOT MATCHED AND 조건 THEN UPDATE SET A.컬렴명 = B.컬럼명 WHEN NOT MATCHED AND 조건 THEN DELETE; 재귀쿼리에 MERGE 사용..
-
DB백업로그 안남기기Database 2020. 11. 4. 17:28
Error로그는 남는다. USE DBName; GO DBCC TRACEON(3226,-1) DBCC TRACESTATUS /* TraceFlag Status Global Session --------- ------ ------ ------- 3226 1 1 0 */ BACKUP DATABASE DBName TO DISK ='D:\BACKUP2.BAK' /* 파일3에서데이터베이스'BACKUPLOGTEST', 파일'BACKUPLOGTEST'에대해176개의페이지를처리했습니다. 파일3에서데이터베이스'BACKUPLOGTEST', 파일'BACKUPLOGTEST_log'에대해5개의페이지를처리했습니다. BACKUP DATABASE이(가) 181개의페이지를0.419초동안처리했습니다(3.364MB/초). */ exec s..
-
SORT 영역을 적게 사용하도록 SQL 작성Database 2020. 11. 4. 10:53
소트 연산이 불가피하다면 메모리 내에서 처리되게 하려고 노력해야 한다. 소트 영역 크기를 늘리는 방법도 있지만 그전에 소트 영역을 적게 사용할 방법부터 찾는 것이 순서다. 가. 소트 완료 후 데이터 가공 특정 기간에 발생한 주문상품 목록을 파일로 내리고자 한다. 아래 두 SQL 중 어느 쪽이 소트 영역을 더 적게 사용할까? [ 1번 ] select lpad(상품번호, 30) || lpad(상품명, 30) || lpad(고객ID, 10) || lpad(고객명, 20) || to_char(주문일시, 'yyyymmdd hh24:mi:ss') from 주문상품 where 주문일시 between :start and :end order by 상품번호 [ 2번 ] select lpad(상품번호, 30) || lpad..