블로그 이미지
bedbmsguru

Notice

Recent Comment

Recent Trackback

Archive

calendar

          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            
  • 28,566total
  • 2today
  • 5yesterday
2010.11.03 11:35 SQL SERVER

--sys.dm_db_index_physical_stats(디비ID, object_ID, indexid(null은 모든인덱스), partition_number , mode(Valid inputs are DEFAULT, NULL, LIMITED, SAMPLED, or DETAILED. The default (NULL) is LIMITED.)

select a.index_id, name, avg_fragmentation_in_percent
from sys.dm_db_index_physical_stats (DB_ID(), OBJECT_ID('테이블이름'), NULL, NULL, NULL) AS a
inner join sys.indexes AS b
 on a.object_id = b.object_id and a.index_id = b.index_id
저작자 표시
신고

'SQL SERVER' 카테고리의 다른 글

특정 프로세스가 실행중인 쿼리 보기  (0) 2010.11.03
Blocking 체크  (0) 2010.11.03
인덱스 조각화 확인  (0) 2010.11.03
UPGRADE Vs MIGRATION  (0) 2010.11.03
SQL SERVER Function  (0) 2010.11.03
Log Shipping 잘 되고 있는지 체크용 쿼리  (0) 2010.11.03
posted by bedbmsguru
2010.11.03 11:35 SQL SERVER

1)Migration
(장점)
- UPGRADE에 비해 좀더 세밀한 컨트롤이 가능하다.
- NEW INSTANCE 와 OLD INSTANCE를 나란히 테스트 가능하다.
- 전체 셋업 과정중에도 서비스가 가능하다.(OLD INSTANCE에서 서비스를 하기 때문에)
- NEW INSTANCE를 셋업도중 에러가 나도 크게 문제가 되지 않는다.
(단점)
- NEW INSTANCE를 설치할 서버가 추가로 필요하다.
- 같은서버에 NAMED INSTANCE로 추가 설치를 할 경우 Application 코드의 수정이 필요하다.
- NAMED INSTANCE로 설치했을경우 DEFAULT INSTANCE를 삭제한다고 해도 NAMED INSTANCE를 DEFAULT INSTANCE로 만들 수 없다.

(2) UPGRADE
(장점)
- 작은 System에서는 MIGRATION보다 속도가 빠르다.
- 추가적인 서버가 필요없다.
- Application의 수정이 필요없다.
(단점)
- UPGRADE도중  데이타나 INSTANCE에 대해 컨트롤이 거의 불가능하다.
- UPGRADE도중 DB서버가 OFFLINE이 된다.
- 모든 SQL서버 컴포넌트에 업그레이드가 좋은 방법이 되는 것은 아니다. (Ex:Analysis Service Cube 같은 경우는 Migration이 더 적절함)

저작자 표시
신고
posted by bedbmsguru
2010.11.03 11:35 SQL SERVER

Function
(1)특징
-에러가 발생하면 Function은 중지된다.
-Function은 독립적으로 실행할 수 없다.
     -->Select, From, WHERE 절과 같은 쿼리 문장에서 호출되어 사용된다.
-에러처리(TRY...CATCH) 사용불가
    -->다른 SQL 문에 종속되어 호출 되기 때문에 에러 처리 불가능 에러처리를 하려면 함수를 호출한 SQL문에 대       하여 에러 처리를 해야한다.
-Function 내부에서는 데이타 갱신 작업이 불가능
    -->외부 테이블에 Insert, Delete, Update, DDL쿼리등이 불가능 단 함수내의 개체에서는 가능함
       
(2)종류
-스칼라 함수 int, nvarchar, bit... 등의 스칼라 데이타 타입을 Return 한다.
-테이블 함수 Table 을 Return 한다.

    CF)테이블함수와 뷰를 통한 결과값 반환과의 차이'
    뷰에서는 조건을 지정할 수 없는 고정된 SELECT 문만 사용가능 조건에 따라 다른 결과를 출력하게 할려면 여    러개의 뷰가 필요함 테이블 함수는 한개의 테이블 반환 함수로 가능
    CF2)테이블 함수와 저장프로시저 와의 차이
    저장 프로시저를 통한 테이블은 테이블중 일부 칼럼만 가져오는 등의 작업이 불가능하기 때문에
    결과 테이블을 다른 테이블과 Joiin 하는등 여러가지 이용이 불가능하다.

(3)테이블 함수의 장점
저장프로시저 처럼 외부 사용자의 요청을 파라미터 받아 다양한 형태의 테이블 만드는 것이 가능하고
SELECT FROM에서 호출 되기 때문에 원하는 필드만 출력도 가능하고 JOIN도 가능하다.


(4)테이블 함수의 단점
-여러개의 결과 테이블을 반환 불가능
-함수 내부에서 업데이트 작업 불가능(저장프로시저는 업데이트 하다가 결과 출력도 가능하고 다른작업도 가능)
-동적 Execute 함수로 테이블 반환 불가능 Exec(SELECT * FROM TABLE 불가능)

저작자 표시
신고
posted by bedbmsguru

티스토리 툴바