yum install subversion 을 이용할 경우 예~전 버젼이 인스톨 된다.

그리하여 소스를 받아서 컴파일해야하는데 ./configure 도중

subversion requires zlib

와 같은 오류를 만나면

yum install zlib-devel

을 해준다.

그리고, make 중

cannot find -lexpat

와 같은 오류를 만나면

yum install expat-devel

을 해준다.


Posted by 알 수 없는 사용자 :

오라클 쿼리관련 힌트.

2009. 3. 2. 14:15 from DB/ORACLE
중요 Hint
1. Select --+ RULE empno, ename from emp where empno=7788
한 SQL문 블록에 대해 RBO 사용

2. Select /*+ALL_ROWS*/ empno, ename from emp where empno=7788
총자원 소비의 최소화 가장 좋은 처리 성능을 목표로 SQL문 블록을 최적화하기 위해 CBO 접근 선택

3. Select /*+FIRST_ROWS*/ empno, ename from emp where empno=7788
첫 번째 행을 찾는 최소의 자원 사용 CBO 접근

4. Select /*+CHOOSE*/ empno, ename from emp where empno=7788
엑세스되는 테이블의 통계 정보 존재 여부에 따라 옵티마이저로 하여금 RBO, CBO 중 하나를 선택

5. select /*+FULL(a)*/ empno, ename from emp a where empno=7788
해당 테이블의 Full Table Scan을 유도

6. select /*+ROWID(EMP)*/ empno, ename from emp a where rowid > 'AAAAtkAAABFV'
지정된 테이블의 Rowid를 이용한 검색을 유도

7. select /*+CLUSTER(EMP)*/ empno, deptno from emp, dept where deptno=10 and emp.deptno = dept.deptno
지정된 테이블 Access에 Cluster Scan을 유도

8. select /*+INDEX(EMP EMPNO_INDEX)*/ empno, ename from emp where deptno=10
지정된 테이블 Access에 Index Scan을 유도

9. select /*+INDEX_ASC(EMP EMPNO_INDEX)*/ empno, ename from emp where deptno<10
지정된 Index의 오름차순 Scan을 유도

10. select /*+INDEX_DESC(EMP EMPNO_INDEX)*/ empno, ename from emp where deptno>10
지정된 Index의 내림차순 Scan을 유도

11. select /*+INDEX_COMBINE(EMP SAL_BMI HIREDATE_BMI)*/ sal, hiredate from emp where sal < 50000
Index 명이 주어지지 않으면 옵디카이저는 해당 테이블의 Best Cost로 선택된 Boolean Combination Index를 사용
Index 명이 주어지면 특정 Bitmap Index의 Boolean Combination의 사용을 시도

11. select /*+INDEX_JOIN(EMP SAL_BMI HIREDATE_BMI)*/ sal, hiredate from emp where sal < 50000
인덱스 조인을 유도한다. 효과적이기 위해서는 중분히 작은 수의 인텍스들이 쿼리를 풀기 위해 필요한 모든 컬럼을 가져야 함.

12. select /*+INDEX_FFS(EMP EMP_EMPNO)*/ empno, ename from emp where empno > 10
조회하는 컬럼들이 인덱스 내에 모두 있는 경우 사용 multi block I/O를 하므로 성능이 좋음

12. select /*+NO_INDEX(EMP EMP_EMPNO)*/ empno, ename from emp where empno > 10
지정된 테이블의 인덱스 중에서 제외 시킬 Index 지정

13. /*+AND_EQUAL(table index1, index2...) */
Sing Colum Index의 Merge를 이용한 Access Path를 선택

14. select /*+USE_CONCAT*/ empno, ename from emp where empno > 10 OR
where 절의 OR 조건을 Union ALL 형식으로 변형

15. NO_EXPAND
where 절에서 OR 절이나 IN-LIST 절의 전계를 CBO 모드에서 사용하지 않게 함

16. /*+ORDERED*/
from 절에 기술된 테이블 순서대로 Join이 일어나도록 유도

17. /*+ORDERED USE_NL(table, table)*/
테이블의 Join 시 드라이빙 테이블의 각 Row가 드리븐 테이블을 NESTED LOOP 형식으로 조인

18. /*+USE_MERGE(table, table)*/
지정된 테이블의 조인이 Sort Merge 조인으로 처리되도록 유도

19. /*+USE_HASH(table, table)*/
각 테이블 간에 HASH JOIN이 일어나도록 유도

20. /*+STAR*/
STAR QUERY PLAN이 사용가능하다면 이를 이용하기 위한 HINT

21. /*+DRIVING_SITE(table)*/
쿼리의 실행이 다른 Site에서 일어나도록 유도(DBLINK 사용하여 Remote Server와 조인시)

22. /*+LEADING(table)*/
조인 순서에서 지정된 테이블이 Driving 테이블이 되도록 함. Ordered 힌트와 같이 사용되는 경우 Leading 힌트는 무시

23. /*+FULL(DEPT) CACHE(table)*/
전체 범위로 읽은 Table을 데이터베이스 버퍼의 LRU 리스트 앞쪽에 두어 버퍼에 오래 남아있을 확률을 높인다. 자주 액세스되는 적은 크기으 테이블에 유용

24. /*+NOCACHE(table)*/
버퍼에서 제거되는 확률을 높이게 하는 힌트로 사용 빈도가 적고 큰 크기의 테이블에 사용

Posted by 알 수 없는 사용자 :
* 질문) a, b, c,d, obj 중 true 값은 무엇일까???
    var a = "";
    var b = 0;
    var c = "a";
    var d = 1;
    var obj = new Boolean();
   
    if(a){
        alert("a는 true");
    }
    if(b){
        alert("b는 true");
    }
    if(c){
        alert("c는 true");
    }
    if(d){
        alert("d는 true");
    }
    if(obj){
        alert("obj는 true");
   }
   * 답) c, d, obj
   * 개인적으로다 첨에 요걸 보았을때 a, b, c, d 에러가 나고 obj만 true가 되는줄 알았더니 왠걸, javascript 에서는 true는 0 이외의 숫자, 문자열, 오브젝트라고 하네..

* 질문) 아래를 수행하고 난 결과는?
  alert(1/0);
  alert(-1/0);

* 답) Infinity, -Infinity
* 에러가 날줄 알았는데 역시 틀림. java에서는 0으로 나누는 연산을 하면 ArithmeticException 이 발생하기 때문에 자바스크립트도 역시 에러가 발생할줄 알았는데
아니네...


.... 근데 위에 쓴것들 나만 몰랐나??????


Posted by 알 수 없는 사용자 :
select date_add(now(), INTERVAL -2 MONTH)

3월 29일에서 한달전 조회하려면 자바에서 calendar객체도 가져와야 하고 귀찮습니다.
DB에서 제공하는 기능을 사용하면 한줄에 땡.

위의 인터넷 뒤에
+- 증가값과 증가단위 YEAR, MONTH, DAY등을 사용하시면 자유롭게 셀렉트 가능!
Posted by 윤재현 :
아직도 예전소스들 열어보면
form1.b_no.value = 1;
요런 스크립팅을 볼 수 있는데
폼에 포함되지 않은 hidden객체가 존재한다면
document.getElementById('')
로 읽어주시고
폼내부객체 조작코드는 보이는대로
document.forms['form1'].b_no.value
형식으로 교체해주세요


Posted by 윤재현 :
일대 다 관계의 두 테이블에서
A 테이블의 제목과 B 테이블의 시간을 출력하게 되면
결과물이 B 테이블의 시간 레코드 수 만큼 출력되는데

select
A.ATITLE
,GROUP_CONCAT( B.BTIME SAPARATOR '|' )
from tableA A
left join tableB B on A.seq = B.fseq

와 같이하여 한번에 여러행의 결과를 그룹으로 출력할 수 있다.

A테이블의 데이터가 아래와 같고

ENO, ETITLE
22    테스트
23    테스트2
24    공연
31    테스트
32    인형극 '나의 열살'

B테이블의 데이터가

22    2009-02-05 오후 12:12:00
23    2009-02-15 오전 11:11:00
23    2009-02-16 오후 12:12:00
24    2009-02-12 오전 1:01:00
24    2009-02-13 오전 1:01:00
24    2009-02-14 오전 1:01:00
24    2009-02-15 오전 1:01:00
24    2009-02-16 오전 1:01:00
24    2009-02-17 오전 1:01:00
24    2009-02-18 오전 1:01:00
24    2009-02-19 오전 1:01:00
24    2009-02-20 오전 1:01:00
31    2009-02-12 오후 1:24:00
31    2009-02-14 오후 2:15:00
31    2009-02-16 오후 10:33:00
32    2009-02-28 오후 12:12:00

위와 같다면

select * from(
select 
A.ENO
ETITLE
,group_concat( substr(B.ETDATE, 1, 16) SEPARATOR  ' \\| ' ) as ETDATE
from tblexhibition A
left join 
tblexhibitiontime B on A.ENO = B.ENO
group by A.eno
)E
이런 쿼리를 이용해서

22    2009-02-05 오후 12:12:00
23    2009-02-15 오전 11:11:00|2009-02-16 오후 12:12:00
24    2009-02-12 오전 1:01:00|2009-02-13 오전 1:01:00|2009-02-14 오전 1:01:00 ~~~
형식으로 레코드를 합칠 수 있다.

다른 DBMS에서는 동일한 기능을 수행하는 함수를 찾지 못했음.
Posted by 윤재현 :
iframe속 파일 소스내에
프레임 내부에는 백그라운드를 제거하는 스타일 추가
<style type="text/css">
  html {bakcground:none transparent;}
  body {background:none transparent;}
</style>

parent 페이지에서는 인라인프레임의 투명도를 허용해주도록 allowTransparency를 추가
<iframe allowTransparency = "true">코드 추가

Posted by 윤재현 :