imported>Bbon |
imported>Bbon |
||
78번째 줄: | 78번째 줄: | ||
ORDER BY | ORDER BY | ||
t.Name</syntaxhighlight> | t.Name</syntaxhighlight> | ||
+ | |||
+ | === 현재 세션 확인 === | ||
+ | <syntaxhighlight lang="sql">select * from sys.dm_exec_sessions</syntaxhighlight> | ||
+ | |||
+ | === 최근 실행된 쿼리 확인 === | ||
+ | <syntaxhighlight lang="sql">select * from sys.dm_exec_query_stats cross apply sys.dm_exec_sql_text(sql_handle) | ||
+ | where last_execution_time >= '2014-11-10' | ||
+ | order by last_execution_time desc</syntaxhighlight> |
2014년 11월 11일 (화) 01:51 판
참조
CLR 정보 조회
SELECT * FROM SYS.ASSEMBLIES
SELECT * FROM SYS.ASSEMBLY_FILES
.NET Framework에서 사용자 코드를 실행할 수 없습니다. "clr enabled" 구성 옵션을 설정하십시오. 라는 오류를 만나면 CLR 사용을 가능하게 설정해야 합니다.
Enabling CLR Integration
EXEC sp_configure 'clr enabled', 1
RECONFIGURE
쿼리 결과를 파일로 저장
BCP 유틸리티를 사용
사용법: bcp {dbtable | query} {in | out | queryout | format} 데이터 파일
[-m 최대 오류 수] [-f 서식 파일] [-e 오류 파일]
[-F 첫 행] [-L 마지막 행] [-b 일괄 처리 크기]
[-n 네이티브 유형] [-c 문자 유형] [-w 와이드 문자 유형]
[-N 비텍스트 네이티브 유지] [-V 파일 형식 버전] [-q 따옴표 붙은 식별자]
[-C 코드 페이지 지정자] [-t 필드 종결자] [-r 행 종결자]
[-i 입력 파일] [-o 출력 파일] [-a 패킷 크기]
[-S 서버 이름] [-U 사용자 이름] [-P 암호]
[-T 트러스트된 연결] [-v 버전] [-R 국가별 설정 사용]
[-k Null 값 유지] [-E ID 값 유지]
[-h "힌트 로드"] [-x xml 서식 파일 생성]
[-d 데이터베이스 이름] [-K 응용 프로그램 의도]
다음과 같이 사용한다.
C:\>bcp "select * from <데이터베이스>.<스키마>.<테이블>" queryout "c:\result.txt" -k -c -S <서버> -U "<사용자>" -P "<비밀번호>" -c
OFFSET
MS SQL Server 2012 에 추가된 OFFSET 사용 예제
-- exec sp_board_select 1, 11
alter procedure sp_board_select
@page int, -- current page
@count int -- record per page
as
begin
set nocount on
SELECT id,
title
FROM dbo.board
ORDER BY id DESC
OFFSET (@page - 1) * @count ROWS
FETCH NEXT @count ROWS ONLY;
end
go
테이블 물리적 크기 조회
SELECT
t.NAME AS TableName,
s.Name AS SchemaName,
p.rows AS RowCounts,
SUM(a.total_pages) * 8 AS TotalSpaceKB,
SUM(a.used_pages) * 8 AS UsedSpaceKB,
(SUM(a.total_pages) - SUM(a.used_pages)) * 8 AS UnusedSpaceKB
FROM sys.tables t
INNER JOIN sys.indexes i
ON t.OBJECT_ID = i.object_id
INNER JOIN sys.partitions p
ON i.object_id = p.OBJECT_ID AND i.index_id = p.index_id
INNER JOIN sys.allocation_units a
ON p.partition_id = a.container_id
LEFT OUTER JOIN sys.schemas s
ON t.schema_id = s.schema_id
WHERE
t.NAME NOT LIKE 'dt%'
AND t.is_ms_shipped = 0
AND i.OBJECT_ID > 255
GROUP BY
t.Name, s.Name, p.Rows
ORDER BY
t.Name
현재 세션 확인
select * from sys.dm_exec_sessions
최근 실행된 쿼리 확인
select * from sys.dm_exec_query_stats cross apply sys.dm_exec_sql_text(sql_handle)
where last_execution_time >= '2014-11-10'
order by last_execution_time desc