DROP TABLE 스키마.테이블명 [CASCADE CONSTRAINTS] [PURGE]
- 테이블 내의 데이터 삭제
- 테이블 구조 삭제
- 트리거 삭제
- 연관된 인덱스 삭제
- 연관된 오브젝트 권한 삭제

드랍된 테이블은 RECYCLEBIN 으로 이동. FLASHBACK TABLE 로 복구할 수 있다.
PURGE 옵션을 써서 지우면 RECYCLEBIN으로 이동하지 않기 때문에 복구 불가.
PURGE RECYCLEBIN은 RECYCLEBIN의 내용을 비운다.

TRUNCATE TABLE 스키마.테이블명
- 하이워터마크를 테이블 시작 지점으로 설정
- 인덱스도 함께 TRUNCATE됨
- 외래키에 의해 참조되는 테이블은 TRUNCATE할 수 없다.
- UNDO 데이터 생성되지 않음, 내부적으로 COMMIT이 수행됨(DDL커맨드라서).

※ 각 행에 DELETE 명령을 수행하지 않고, 언두 데이터를 작성하지 않기 때문에 TRUNCATE는 일반적으로 DROP보다 빠르다.

출처 : http://devideby0.egloos.com/2095870

WinTail.zip



설치 없이 압축해제 후 바로 실행하면 됨

tail.zip

Unix에서 tail 명령을 사용하던 사람들 에게 적당한 tail 명령

커멘드 라인에서 실행함

아래는 압축을 풀면 생기는 SETUP_README.txt

파일의 내용입니다.

=====================================================
이 문서는 Tail,grep 명령을 windows XP 에 설치하는 방법을
설명합니다.

그래서 도스창에서 다음 명령이 가능합니다.

>tail -f stdout.log | grep DEBUG

=====================================================
CYGWIN 으로 부터 Tail 명령만 뽑아온 것입니다.

URL: http://www.cygwin.com/

위 URL로부터 풀 설치할 수 있습니다.

=====================================================

압축 해제합니다.

tail.exe
cygwin1.dll
cygintl-1.dll
cygpcre.dll
grep.exe

위 3개의 파일을 다음 폴더에 복사에 넣습니다.
C:\WINDOWS 는 실제 windows xp 가 설치된 폴더입니다.

C:\WINDOWS\system32

=====================================================
문서만든이: 김준수
E-Mail : jun60@javanuri.com
=====================================================

var str = "클립보드에 복사할 내용";

window.clipboardData.setData("Text",str);

새로 생성한 데이터베이스에 여러명의 개발자가 달라붙어서 작업을 하다보니...

어느새 이상한 찌꺼기로 보이는것들이 생기곤 한다.

sql> select * from tab;

...

...

BIN$+JhRwRSHQRm8CPHbIPcAhg==$0
BIN$+dyK/iSeSm2xC63JjCCnWQ==$0
BIN$+iZrUVW+QK6GJf6AU54nDQ==$0
...

이런 정상적이지 않은 놈들이 보인다.

토드 스키마브라우져에서 뒤져보니

My Schema > Constrants 에 들어있는 놈들이다.

자세히 보니 이미 드랍된 테이블의 인덱스들 인듯

drop를 시도하면...

ORA-38301: 휴지통에 있는 객체에 대해 DDL/DML을 수행할 수 없음

이라고 나온다... 웬 휴지통 -.,ㅡa 이거 뭥미...

결국 ORA-38301로 검색을 해보니

오라클 10g에서는 휴지통(recyclebin) 이라는 것이 존재하는데

drop명령으로 삭제한 객체들이 바로 삭제되지 않고 여기에 담겨있다고 한다.

휴지통에 들어있는 객체들은 아래의 상황 전까지 휴지통에 보관된다고 한다.

- purse 명령으로 영구히 삭제

-undrop명령으로 drop객체 복구

- 테이블스페이스 (휴지통)공간이 부족할때.

- 테이블스페이스가 extend될때

휴지통에 들어있는 객체들 보기

- user_recyclebin

- dba_recyclebin

휴지통 비우기

purge recyclebin; 사용자의 휴지통 비우기
purge dba_recyclebin; 휴지통내의 모든 놈들 비우기
purge tablespace users; users테이블스페이스의 휴지통 비우기
*purge table "휴지통내의 이름"휴지통의 하나의 객체만 제거시


휴지통의 객체 복구
flashback table 휴지통내의 이름 to before drop;

휴지통에 넣지 않고 drop
drop table 테이블명 purge;

출처 : http://cafe.daum.net/oddtip/FbCl/187?docid=1CBe5|FbCl|187|20080808184442&q=ORA-38301&srchid=CCB1CBe5|FbCl|187|20080808184442

iBATIS-SqlMaps-2-Tutorial_ko.pdf
iBATIS-SqlMaps-2_ko.pdf
//문자열 length구하기
function getByteLength(val)
{
var tmplen = 0;
for (var i = 0; i < val.length; i++)
{
if (val.charCodeAt(i) > 127)
tmplen += 2;
else
tmplen++;
}
return tmplen;
}



아래 링크에서 개선된 방식 비교 (속도 빠름)
http://programmingsummaries.tistory.com/239


function getByteLength(s,b,i,c){
    for(b=i=0;c=s.charCodeAt(i++);b+=c>>11?3:c>>7?2:1);
    return b;
}


boolean flag1 = false;

boolean flag2 = false;

... 생략 ...

// 트랜잭션 처리

... 생략 ...

if(트랙잭션 처리 성공여부)
{
flag1 = true;

//트랜잭션성공시 처리

... 생략 ...

}
else
{
flag1 = false;

if(flag1 && flag2)
{
flag1 = true;
flag2 = true;
}
else
{
flag1 = false;
flag2 = (flag1)?true:false;
}
}

... 생략 ...

지금 하는 프로잭트가 기존 업무를 리뉴얼 하는 작업인데

AS-IS를 보면 위와 같은 로직들이 상당히 많이 보여진다.

이게 뭥미... -.,ㅡ;;;

기냥 이렇게 하면 되지 참나...

boolean flag1 = false;

boolean flag2 = false;

... 생략 ...

// 트랜잭션 처리

... 생략 ...

if(트랙잭션 처리 성공여부)
{
flag1 = true;

flag2 = true;

//트랜잭션성공시 처리

... 생략 ...

}
else
{
flag1 = false;

flag2 = false;

}

... 생략 ...

이전 작업한 사람이 무슨 생각으로 저렇게 만들어 놨는지... 당췌

boolean flag1 = false;
boolean flag2 = false;

... 생략 ...

if(flag1 && flag2)
{
flag1 = true;
flag2 = true;
}
else
{
flag1 = false;
flag2 = (flag2)?true:false;
}

이런 것도... ㅋㅋ

프로그램 이렇게 짜지 말자.

+ Recent posts