내가 이런글 올리면...

보안을 신경 쓰시는 분들은 버럭!! 하실 수도 있는 일이다..

보안적으로는 좋지 못한 방법이긴하지만//.^^;;(모..요즘 DB관리가 많이들 그러니...)

편의를 위해서 사용하는 방법으로 이해 해주시길 바란다.^^


File1. /bin/rsql

아주 단순한 놈이다..-_-;
ORACLE을 한방에 로그인 하기 위해 만든..쉘

sqlplus userid/userpassword

File2. /bin/rsql2

이것도 그다지 복잡한 놈은 아니다..
rsql2 <<sql문>>
형태로 사용하는데 은근히 편하다..

echo $@ > ~/tmp/sqltmp
echo "/" >> ~/tmp/sqltmp
sqlcvi ~/tmp/sqltmp
rsql < ~/tmp/sqltmp

File3. /bin/sqlcvi

이건 위를 보면 알겠지만 rsql2에서 사용하는 놈이다... \제거하는 역할을 한다.
사실 하도 오래전에 만들어서 기억은 잘 안나지만..막상 필요 없을 법도 하다..ㄱ-;
red $1 << EOF
1,$ s/\\\//g
w
q
EOF


File4. /bin/desc

이건 말이 DESC지 TABLE 정보를 보는 쉘이다..
사용은 desc <<테이블명>>
이면 된다.
다들 아시겠지만 oracle은 Comment 컬럼의 한글명 까지 저장이 되기때문에..
영어 컬럼명을 잘 알아보기 힘들때 쓰면 편리하다.

마지막 부분의 awk사용은 단지 빈줄로 나오는 것들을 걸러내기 위함이다..
만들고 보니 빈줄이 별로 안이쁘더라는..^^

#!/usr/bin/ksh

if [ $# -ne 1 ]
then
    echo "인자를 잘못 입력하셨습니다."
    echo "사용법 : desc TABLE_NAME"
    exit
fi

tablecomment $1 > ~/tmp/.desc_tmp

awk -F : '{
    if ($0 != "") printf("%s\n",$0);
}' ~/tmp/.desc_tmp

File4. /bin/tablecomment

이건 desc에서 사용하는 프로그램이다.
내가 하는 프로젝트의 경우 규칙이 정해져 있어 컬럼명만 보면.
사이즈., 데이터형이 어느정도 구분이 가기에 사이즈, 데이터 형은 제외하고.
영문 컬럼명, 한글 컬럼명만을 출력하도록 하였다.
이는 개발자들이 필요에 따라 데이터형, 사이즈를 추가하면 된다.
모 만들기 어려우신분은 요청을 하시면 해드릴수 있습니다.ㅎㅎ

#!/usr/bin/ksh

if [ $# -ne 1 ]
then
    echo "인자는 1개"
    exit
fi

echo "TABLE NAME : $1"

sqlplus -s userid/userpwd << EOF
        set     pagesize 10000
        set     linesize 400
        column  COMMENTS format a50
        column  COLUMN_NAME format a40
        SELECT  COLUMN_NAME,
                COMMENTS
          FROM  ALL_COL_COMMENTS
         WHERE  TABLE_NAME LIKE UPPER('$1')
        ;
        exit
EOF



File5. /bin/DESC

이건 desc를 응용하여 편하게 쓰기 위해 만든 녀석이다.

#!/usr/bin/ksh

while [ 1 ]
do
    clear
    echo "TABLE NAME을 입력하세요(종료 : q) : \c"
    read TB_NAME
    if [ ${TB_NAME} = "q" ]
    then
        break
    else
        desc $TB_NAME
    fi
    read
done




 

'컴퓨터 이야기' 카테고리의 다른 글

Unix 라인에디터  (0) 2007.02.09
find를 이용한 스크립트.  (0) 2007.02.08
나의 백업 솔루션  (0) 2007.02.06
내가 쓰고 있는 .vimrc  (0) 2007.02.05
(표준화)데이터 용어사전의 필요성.  (0) 2006.12.05

+ Recent posts