→ Top Page ←
→ Guestbook ←
→ Read RSS Paper ←
→ Admin ←
 
09/02/12 20:50 | Study - Work
Array를 이용한 다중 DB Insert
간만의 포스팅이 일이야기라니..
내 삶이 삭막하기 그지없구나.. -_-;;;

어쩌둥둥.. 시작한 포스팅.. 마무리를 지어야지..

이번에 대용량 데이터를 처리해야 하는 일이 생겨 처음으로 사용해 본
Array를 이용한 DB 다중 Insert !!
뭐 아는 사람들은 이미 알수도 있지만.. 나의 DB지식의 밑천은 학부때 들은 DB수업이 달랑인지라... 아직도 DB의 세계는 심오하기만 한다.. -_-;;
(인덱스며.. 프로시져.. 트리거.. 속도개선을 위한 튜닝작업 한번 하자면...아웅~~ @_@)

아래의 방법처럼 배열을 이용하여 DB Insert 작업을 하면 데이터를 읽어서 하나하나 Insert 때리고 있는거 보다 시간이 초절약된다.
fscanf로 파일 내용을 읽어서 배열에 잘 저장한 다음 Insert를 한번만 해주면 쑤욱 입력되어 버리는..간단한 프로그램이지만.. 그 효과는 실로 놀랍다.
200만건 이상의 자료를 하나씩 Insert 하였을 때 1시간 반이 걸리던 작업이 배열을 사용하여 1000건씩 끊어 Insert 할 경우 2~3분이면 끝이 난다.. 브라보~

아.. 암만해도.. 올해는 대용량 데이터베이스처리와 관련한 공부를 좀 하긴 해야할 듯.. -_-;;;

/* 배열을 이용한 삽입 예제 */
#include

/***************************************************************
This is is a sample Pro*C program which uses the FOR option
by inserting records into the EMP table.
***************************************************************/
EXEC SQL BEGIN DECLARE SECTION;
   VARCHAR uid[20];
   VARCHAR pwd[20];
   int empno[100];
   VARCHAR ename[100][15];
   VARCHAR job[100][10];
   VARCHAR hiredate[100][9];
   float sal[100];
   int deptno[100];
   int loop;
EXEC SQL END DECLARE SECTION;
EXEC SQL INCLUDE SQLCA;

FILE *fp;

void main(void)
{
   int i;
   int fsret;

   /* log into ORACLE */
   strcpy(uid.arr, "SCOTT");                /* copy the user name */
   uid.len = strlen(uid.arr);
   strcpy(pwd.arr, "TIGER");                /* copy the password */
   pwd.len = strlen(pwd.arr);
   EXEC SQL WHENEVER SQLERROR GOTO errrpt;
   EXEC SQL CONNECT :uid IDENTIFIED BY :pwd;
   printf("Connected to ORACLE user : %s\n\n\n", uid.arr);
   if((fp = fopen("test.dat", "r")) == NULL)
   {
     printf("Error opening file test.dat \n");
     exit(1);
   }
   while(1)
   {
     for(i = 0; i < 100 ; i++)
     {        
        fsret = fscanf(fp, "%d %s %s %s %f %d",
                &empno[i], ename[i].arr, job[i].arr, hiredate[i].arr,
                &sal[i], &deptno[i]);
        
        if(fsret == EOF)
           break;
        if(fsret == 0)
        {
           printf("Incompatible field on the line. \n");
           exit(1);
        }
        ename[i].len = strlen(ename[i].arr);
        job[i].len = strlen(job[i].arr);
        hiredate[i].len = strlen(hiredate[i].arr);
     }
     loop = i;
     EXEC SQL FOR :loop
        INSERT INTO EMP(empno, ename, job, hiredate, sal, deptno)
        VALUES(:empno, :ename, :job, :hiredate, :sal, :deptno);
    
     EXEC SQL COMMIT WORK;
     printf("%d rows inserted. \n", sqlca.sqlerrd[2]);
     if(loop < 100)
        break;
   }
   printf("File test.dat loaded. \n");
   EXEC SQL WHENEVER SQLERROR CONTINUE;
   EXEC SQL COMMIT work RELEASE;
   exit(0);

   errrpt:
     printf("\n %70s \n", sqlca.sqlerrm.sqlerrmc);
     EXEC SQL ROLLBACK WORK RELEASE;
     exit(1);
}

 

Permanentlink | Trackbacks | Comments(10)  


08/09/03 18:38 | Infomation
대학원생이신가요?

“지난해 연구수당을 받은 대학원생(연구원)은 이번 5월에 소득세 확정신고를 하면 보수를 받을 때 미리 낸 4.4% 기타소득세를 대부분 돌려받으십니다.”

대학 산학협력단에서 연구비를 받은 대학원생 또는 이들을 자녀나 형제, 친구로 두신 회원님들은 주목해 주시기 바랍니다.

지난해 연구소득에 대해 이 달에 소득세 확정신고를 하시면 원천징수(4.4%)로 납부한 세금을 전액 또는 70~80% 돌려받으실 수가 있습니다. 대다수 대학원생들의 연구소득이 연간 800만원을 넘지 않는 점을 감안할 때 대부분 지난해 납부한 기타소득세 전액을 현금으로 되찾을 수가 있습니다.

하지만 많은 대학원생들이 이같은 사실을 몰라 개인별로 수십만원에 달하는 세금을 돌려받지 못하는 안타까운 현실이 빚어지고 있습니다.

이에 납세자연맹은 5월 한 달간 학업 및 연구에 바쁜 대학원생들이 간편하게 소득세 확정신고를 할 수 있도록 지원업무를 하고 있습니다. 납세자연맹 홈페이지를 통해 온라인 신청을 한후 관련서류를 등기로 보내오면 연맹이 납세자 계좌에 입금될때까지 모든 절차를 대신 처리해줍니다.
지난 2003~2006년 기타소득에 대해서 확정신고를 하지 않았으면 이제라도 환급신청이 가능합니다.

5월이 가기 전에 꼭 확정신고를 하셔서 세금으로 납부한 소중한 소득의 일부를 반드시 되찾으시기를 당부드립니다.

-대학원생 연구소득 등 기타소득자 절세전략
-2003 ~ 2007년 기타소득 환급대행 신청
-기타소득 상담사례

<기타소득 환급운동이란? >
기타소득이란 강연료, 대학원생 및 각종 프로젝트 연구원 소득, 원고료, 인세, 경품소득 등 어쩌다 한 번씩 생기는 소득을 말합니다. 통상 4.4%를 떼고 보수를 받는다면 보수를 지급하는 곳에서 기타소득으로 세무처리를 한 경우입니다.
기타소득 역시 보수를 받을 때 미리 낸 세금의 일부 또는 전부를 보통 돌려받을 수 있고, 2003 ~ 2006년에 놓친 소득세도 소급하여 지금 환급을 받을 수 있습니다.
그러나 국세청의 홍보부족과 복잡한 세법으로 많은 기타소득자들이 환급의 권리를 행사하지 못하고 있습니다. 이에 연맹은 ‘기타소득자 소득세 환급운동’을 적극 추진하고 있습니다.

[수신거부]ㅣ납세자의 권익을 보호하는 지킴이 한국납세자연맹(www.koreatax.org)


2003년~2007년까지 기타소득이 있는 대학원생들,
즉 연구비를 받은 대학원생들은 받은 연구비에서 떼인 4.4%의 세금을 돌려받을 수 있게 되었다는 말...
대학원생뿐만 아니라, 근로소득이 아닌 기타소득이 있는 사람들은 누구나에게 해당된다.(근로소득이 있으면서 발생한 기타소득에 대해서는 어떻게 되는지 위 사이트에 가서 더 자세히 알아봐야 할듯..)
위 글에는 5월 한달간이라고 되어 있지만 지금도 계속해서 신청을 받는 듯 하니... 밑져야 본전이라고 한번 신청해 보는 것이 좋을 듯 하다. 처리기간은 약 2달..
자기가 받았는지 안받았는지 모르는 사람은 홈텍스(http://www.hometax.go.kr/index.jsp)에 가서
[신고납부확인] -> [지급조서신고내역조회]에서 [기타소득]으로 서식을 놓고 조회를 하면 귀속년도에 해당하는 기타소득원천징수영수증을 확인할 수 있다.
이차저차 절차도 복잡하고 제출해야 하는 서류도 많지만
- 주민등록등본
- 본인실명 통장사본
- 소득공제가 있는 경우에는 소득공제 입증서류

를 한국납세자연맹으로 보내면 한국납세자연맹에서 환급신청을 대행해준다. 수수료는 환급비의 10%를 성공후원금으로 납부하는 것으로 갈음하는듯 하다.

 

Permanentlink | Trackbacks | Comments(9)  


[1][2][3][4][5][6][7][8][9] ... [96]
<< PREV | NEXT >>

 

 

 

▒ 맹~ ▒ 's 블로그
To Know You is To Love You

  View Category
분류 전체보기 (191)
Diary (108)
Journey (25)
Study (37)
Infomation (6)
Culture (8)
Etc (7)

  Calender
<<   2009 Nov   >>
S M T W T F S
1234567
891011121314
15161718192021
22232425262728
293012345







Get RSS Page XML RSS2.0
Powered By TatterTools
Skin By Leezche from plyfly.net

Total : 296379
Yesterday : 278
Today : 40

Recent Articles
눈을 뜨다!! (11)
▶◀ [근조] 당신이 그.. (3)
Array를 이용한 다중 DB .. (10)
대학원생이신가요? (9)
[2008년 오사카,교토,고.. (1)
[2008년 오사카,교토,고.. (4)
[2008년 오사카,교토,고.. (6)
프로야구 시즌이 돌아.. (6)
[EJB] Servlet-Web 기본
[EJB] Basic Technology
Recent Replies
우왕~ 말로만 듣던... 그..
11/11 - KID
말만 듣고 있어도.... 오..
10/30 - 마틴
새로운 세상이겠네..ㅎ..
10/27 - Missbae
응~ 엄청 겁먹었었는데..
10/26 - 맹
오~~ 언니 고민하시더니..
10/23 - 레나^^
Recent Trackbacks
노무현 전 대통령 서거..
마틴블로그 닷 넷
너도사라~!
jalnaga's Blog
내 도메인의 가치
날자, 허리휜나비!!!
내 도메인은 얼마일까?
+ 。。언제나 맑음 。。+
내 도메인의 가치는 ? ..
▒ UnlimiTCode Blog™ ▒
Favorite Link
+ 。。언제나 맑음 ..
+ 미스터트롤의 개인..
::투덜:: MonOloguE
ACARAN BLOG & GALLERY
heejooya.com▒Happy Now▒..
ICESUN=
jalnaga's Blog
Kbckbc's Blog
Narae's 觀照處 Ver..
The Winner Takes It All
UnlimiTCode Blog™ @ T..
[ Martin Blog ]
▒ UnlimiTCode Home™ ▒..
今天你翔了吗?^_~오..
김영욱의 블로그
날자, 허리휜나비!!!
남현정의 T스토리
미스터트롤의 영혼..
박현정 홈피
시원한 하늬바람
조각구름 BLOG
차의영 교수님