2007. 7. 25. 15:49
[DB]
2007. 7. 24. 13:09
[IT Story]
2007. 7. 22. 03:46
[IT Story]
|
2007. 7. 20. 21:17
[DB]
SQL은 ANSI-92 ISO 표준 관계형 DBMS에 접근에 데이터를 처리하기위한 언어 입니다.
PL-SQL :
- PL/SQL 은 Oracle's Procedural Language extension to SQL. 의 약자 입니다.
- SQL문장에서 변수정의, 조건처리(IF), 반복처리(LOOP, WHILE, FOR)등을 지원하며,
오라클 자체에 내장되어 있는 Procedure Language입니다
- DECLARE문을 이용하여 정의되며, 선언문의 사용은 선택 사항입니다.
- PL/SQL 문은 블록 구조로 되어 있고 PL/SQL 자신이 컴파일 엔진을 가지고 있습니다.
QL(EJB-QL)
- EJB-QL은 standard SQL 92에 기반한(혹은 비슷한) 객체지향적인 쿼리 랭귀
참조 : http://cafe.naver.com/javalicense.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=132
T-SQL
- MS에서 ANSI 표준 SQL에 약간의 기능을 더 추가해 보완해 만든 SQL서버를 제어하기 위한 언어
출처 : 네이버 지식2007. 7. 20. 21:03
[DB]
실행계획을 재사용하기위해 cache 에서 실행한적이 있는지 비교하기위해 다음과같은 조건으로 비교를 한다.
1.adhoc
- 대개 클라이언트 코드상에서 문자열로 쿼리문을 만들어 실행을 하거나 동적쿼리를 만들어 exec 를 이용하여 실행하는 형식이다. 이는 문자열에서 빈공간 한칸만 달라도 새로운 실행계획을 세우게 된다. (권장하지는 않는다.)
2.prepared
- sp_executesql를 동적쿼리를 실행하는 방식이다. 이는 조건절(where) 이전까지를 비교하게된다.
* 유니코드를 사용해야함(문자열앞에 N을 붙여줘야함)
예) sp_executesql N'select * from table where a=1'
3.auto parametars
- ADO의 addparametars 와 같은형식이다. 이는 파라메타값을 제외한 부분을 비교하게된다.
즉, prepared와 같은 방식으로 비교하게된다.
4.store adhoc
- 저장프로시저를(sp)를 이용하는 방식이다. 이는 저장프로시저명만 비교하여 실행계획을 재사용하게된다.(권장)
* 하지만 처음 실행계획을 세울때 잘못된 조건으로 인덱스를 사용하지 않게되면 이후 인덱스 사용이 가능한 조건이들어와도 잘못된 실행계획을 실행하게된다. 즉, 잘못된 실행계획을 재사용할 경우 AD HOC을 사용하는것보다 더 비효율적일수가 있다.
1.adhoc
- 대개 클라이언트 코드상에서 문자열로 쿼리문을 만들어 실행을 하거나 동적쿼리를 만들어 exec 를 이용하여 실행하는 형식이다. 이는 문자열에서 빈공간 한칸만 달라도 새로운 실행계획을 세우게 된다. (권장하지는 않는다.)
2.prepared
- sp_executesql를 동적쿼리를 실행하는 방식이다. 이는 조건절(where) 이전까지를 비교하게된다.
* 유니코드를 사용해야함(문자열앞에 N을 붙여줘야함)
예) sp_executesql N'select * from table where a=1'
3.auto parametars
- ADO의 addparametars 와 같은형식이다. 이는 파라메타값을 제외한 부분을 비교하게된다.
즉, prepared와 같은 방식으로 비교하게된다.
4.store adhoc
- 저장프로시저를(sp)를 이용하는 방식이다. 이는 저장프로시저명만 비교하여 실행계획을 재사용하게된다.(권장)
* 하지만 처음 실행계획을 세울때 잘못된 조건으로 인덱스를 사용하지 않게되면 이후 인덱스 사용이 가능한 조건이들어와도 잘못된 실행계획을 실행하게된다. 즉, 잘못된 실행계획을 재사용할 경우 AD HOC을 사용하는것보다 더 비효율적일수가 있다.
━━━━━━━━━━━━━━━
by 한상국(han3925)
MAIL han3925@gmail.com
han3925@hotmail.com
BLOG pointnet.tistory.com
━━━━━━━━━━━━━━━