"Internal Table은 프로그램 내에서 정의하여 사용할 수 있는 Local Table이다."


Struture비교

# c언어에서의 구조체 선언

STRUCT s_type

{
    CHAR no[6];

    CHAR name[8];

    CHAR part[16];

};

STRUCT s_type sawon.


#ABAP에서의 구조체 선언

TYPES : BEGIN OF s_type,

NO(6) TYPE C,

NAME(8) TYPE C,

PART(16) TYPE C,

END OF s_type.

DATA sawon TYPE s_type. 

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

Structure(구조체) 배열과 Internal Table

#C언어에서의 구조체 배열 선언

STRUCT sawon

{
    char NO[6];

    char NAME[8];

    char part[16];

};

STRUCT s_type sawon[100]


#ABAP에서의 Internal Table 선언

TYPES : BEGIN OF s_type,

NO(6) TYPE C,

NAME(8) TYPE C,

PART(16) TYPE C,

END OF s_type.


TYPES t_type TYPE STANDARD TABLE OF  s_type.

DATA sawon TYPE t_type INITIAL SIZE 100.

(s_type이라는 구조체 생성-> s_type을 타입으로하는 internale table 타입 정의-> t_type을 타입으로하는 sawon 테이블 선언)

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

*C언어에서의 배열을 선언할 때 미리 크기를 지정하는 반면, Internal Table은 INITIAL SIZE 구문으로 테이블 크기만 선언할 뿐 미리 메모리에 Load하지 않는다. 따라서 APPEND구문을 사용하여 Line이 추가될 때마다 메모리에 Load 해야 한다. 이러한 측면에서 Internal Table을 동적인 구조체 배열이라고 정의.

*Internal Table은 항상 할당과 추가구문이 쌍으로 움직여야 함.

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

[Internal Table 생성]

: 구조체 타입을 정의한 후 그 타입을 참고하여 생성하는 것이 일반적

# Local Table Type : 프로그램 내에서 Local Table Type을 생성하여, Internal Table 생성 시 참고

# lmplicit Table Type : ABAP Dictionary Table을 참고하여 Internal Table을 생성

# Global Table Type : ABAP Dictionary Table Type을 참고하여 Internal Table을 생성

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

[Internal Table의 라인 Type]

#Line Type

#Key

: Internal Table의 Row를 구분. Standard, User-defined Key 두 가지의 테이블 키가 존재.

: 키값은 Unique, Non-unique 하게 정의(Unique Key를 가지는 경우 중복된 값을 APPEND 할 수 없다.)

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

[Table Type]

Table 종류

#Standard Table

: 순차적인 인덱스를 가지는 테이블.

: Index를 이용하여 테이블 Entry를 찾을 때 가장 바람직한 테이블 구조.

: 키는 항상 Non-unique로 선언하여야 한다.


#Sorted Table

: Index 테이블

: 항상 정렬된 테이블

: Unique / Non-unique를 반드시 명시


#Hashed Table

: Index (x)

: hash 값으로 계산된 Key 값으로만 탐색

: 반드시 Unique하게 선언되어야 한다.

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

[Header Line]

= Work Area.

= Internal Table 선언 시 WITH HEADER LINE 구문을 추가하면 생성

= Internal Table을 LOOP 처리하면서 개별 Line이 Header Line으로 옮겨 가는 과정.


#헤더라인을 선언한 경우

ex) LOOP AT itab

WRITE : ITAB-RCEPNO.

    ENDLOOP.

ex) READ TABLE itab INDEX 2 // 2번째 라인이 헤더 라인으로 올라옴

#헤더라인을 선언하지 않은경우

ex)LOOP AT itab INTO work_area.

WRITE : work_area-carrid.

   ENDLOOP.

ex) READ TABLE itab INDEX 2 INTO work_area // 정보를 옮긴후 사용

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

ex) 헤더 라인이 존재하는 Internal Table 예제

REPORT Z07_001.


//line구조체생성

TYPES : BEGIN OF line,

col1 TYPE I,

col2 TYPE I,

END OF line.


//line구조체를 타입으로하는 HASHED TABLE itab 선언 ( 유니크 키는 col1, 헤더라인 사용)

DATA itab TYPE HASHED TABLE OF line WITH UNIQUE KEY col1 WITH HEADER LINE.


//4번의 반복 col1(index번호) col2(index번호의 제곱) , itab에 삽입

DO 4 TIMES.

itab-col1 = sy-index.

itab-col2 = sy-index ** 2.

INSERT Table itab.

ENDDO.


//col1변수가 2인 라인을 읽음

itab-col1 = 2.

READ TABLE itab FROM itab.


//col2변수를 100으로 수정

itab-col2 = 100.

MODIFY TABLE itab.


//col1변수가 4인 라인은 지움

itab-col1 = 4.

DELETE TABLE itab.


//루프를 돌려 출력

LOOP AT itab.

WRITE : / itab-col1, itab-col2.

ENDLOOP.

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

ex) Header Line을 사용하지 않는 경우 예제

REORT Z07_005.


TYPES : BEGIN OF line,

col1 TYPE I,

col2 TYPE I,

END OF  line,


DATA itab TYPE HASHED TABLE OF line WIHT UNIQUE KEY col1.

//Work Area 생성

DATA wa LIKE LINE OF itab.


DO 4 TIMES.

wa-col1 = sy-index.

wa-col2 = sy-index ** 2.

INSERT wa INTO TABLE itab. // Work Area에 삽입하고 itab으로 옮김

ENDDO.


wa-col1 = 2.

READ TABLE itab FROM wa INTO wa. // itab에 wa으로 col1변수가 2인것을 wa로 옮겨 읽음


wa-col2 = 100.

MODIFY TABLE itab FROM wa. // wa로부터 itab을 col2변수를 변경


wa-col1 = 4.

DELETE TABLE itab FROM wa. // wa로부터 col4인 것을 table에서 찾아 삭제


LOOP AT itab INTO wa.

WRITE : / wa-col1, wa-col2.

ENDLOOP


요세 인턴을 하느라 글을 잘 못씁니다.

오랜만에 들어와서 노래 한곡 추천 할게요.

레드 제플린 - stairwya to heaven


'Free' 카테고리의 다른 글

오늘의노래  (0) 2016.06.24
정보처리기사 실기 2015년 2회  (0) 2016.06.24
정보처리기사 실기 2015년 1회  (0) 2016.06.24
오늘의 노래  (0) 2016.06.21
팔 운동 루틴  (0) 2016.06.17

정승환 - 너였다면(또 오해영 ost)

'Free' 카테고리의 다른 글

오늘의 노래  (0) 2016.07.10
정보처리기사 실기 2015년 2회  (0) 2016.06.24
정보처리기사 실기 2015년 1회  (0) 2016.06.24
오늘의 노래  (0) 2016.06.21
팔 운동 루틴  (0) 2016.06.17

|데이터베이스

튜닝(Tuning)
: '최적화'라는 개념으로 이해할 수 있다. 튜닝이 이루어지게 되면 업무의 최적화, 하드웨어적인 병목 현상 해결, SQL의 최적화 등 여러가지 개선을 도모할 수 있다. 

잠금(Locking)
: 데이터베이스 관리에서 하나의 트랜잭션이나 세션에 사용되는 데이터를 다른 트랜잭션이나 세션은 접근하지 못하게 하는 것

Selectivity
: 인덱스의 키 값당 행의 개수를 기준으로 산정

Clustered index
: 인덱스가 가리키는 데이터가 이미 정렬되어 있어 최종 인덱싱 단계 없이 바로 데이터를 찾을 수 있는 특징

Non-Clustered index
: 한 테이블에 여러개의 인덱스 설정이 가능( 한 특정 값을 찾거나, 많은 양의 데이터 중에서 작은 범위를 찾을 때만 유용)



|업무프로세스

EA(Enterprise Architecture : 전사적 아키텍처)
: 정보화를 체계적으로 추진하기 위해 조직 및 업무활동, 정보기술간의 상호관계에 대해 현재의 모습과 향후 추진해 나갈 모습을 미리 규정한 정보화 종합설계도

ERP(Enterprise Resource Planning  : 전사적 자원 관리)
: 독립적으로 운영되던 각종 관리 시스템의 경영자원을 하나의 통합 시스템으로 재구축함으로써 생산성을 극대화하려는 경영혁신기법

EAI(Enterprise Application Intergration : 기업 애플리케이션 통합)
: 더에터 웨어하우스나 기업자원관리등 기업에서 운영하는 서로 다른 어플리케이션을 통합하여, 업무의 효율성을 높임

MOT(Moment of Turth : 결정적 순간)


|신기술동향

Foursquare
: 구글에서 독립한 데이스 크롤리가 2009년 3월에 발표한 위치기반 소셜네트워크서비스

Infordemics(정보전염병)
: 정보+전염병 , 스마트폰과 소셜네트워크서비스 드으이 발달로 잘못된 정보나 소문이 지나치게 빨리 확산되면서 대중의 두려움이 필요 이상으로  증폭되는 현상

Hash Tag(해쉬태그)
: #+특정단어, 트위터, 페이스북등 소셜 미디어에서 특정 핵심어를 편리하게 검색할 수 있도록 하는 형태

Smoke testing(기초 안정성 검사)
: 소프트웨어 일부를 개발한 후 본격적인 시험 수행에 앞서 소프트웨어의 결함을 식별하고 변경의 유효성을 검사하는 시험의 형태

Digital footprint
: 사람들이 여러 웹페이지에 로그인을 하거나 결제 정보를 입력하는 등 온라인 활동을 하면서 남긴 기록




'Free' 카테고리의 다른 글

오늘의 노래  (0) 2016.07.10
오늘의노래  (0) 2016.06.24
정보처리기사 실기 2015년 1회  (0) 2016.06.24
오늘의 노래  (0) 2016.06.21
팔 운동 루틴  (0) 2016.06.17

|업무프로세스

BRMS(Business Rule Management System)

: 조직이나 기업을 운영하는데 사용되고 복잡하고 다양한 결정 논리를 정의, 설치, 수행, 감시, 그리고 유지보수하는 소프트웨어 시스템


Semantic Web

: 사람을 대신해 컴퓨터가 정보를 읽고 이해하며 가공해 새로운 정보를 만들어 낼 수 있도록, 이해하기 쉬운 의미를 가지 차세대 지능형 웹


TPS(Transaction Processing System)

: 반복적이고 일상적인 거래를 처리하고 그 거래로 발생하는 여러 가지 데이터를 저장하고 관리하는 정보시스템


CALS(Commerce At Light Speed)

: 광속상거래 또는 초고속경영톱합정보시스템이라고도 한다. 제조업체와 협력업체 등 관련 기업들이 공유하며 경영에 활용하는 기업간 정보시스템


|신기술동향

Ransomware(랜섬웨어)

: 미국에서 발견된 스파이웨어 등의 신종 악성 프로그램, 컴퓨터 사용자의 문서를 볼모로 잡고 돈을 요구한다고 해서 '랜섬'이란 수식어가 붙음


POSIX(Portable Operating System Interface: 이식 가능 운영체제 인터페이스)

: 서로 다른 UNIX OS의 공통 API를 정리하여 이식성이 높은 유닉스 응용 프로그램을 개발하기 위한 목적으로 IEEE가 책정한 애플리케이션 인터페이스 규격


비트코인

: 실제 생활에서 쓰이는 화페가 아니라 온라인 거래상에서 쓰이는 가상화페


Cordcutters(코드커터족)

: 지상파와 케이블 등 기존 텔레비전 방송 서비스를 해지하고 인터넷 방송 서비스를 선택하는 소비자군.


FinTech(핀테크)

: 금융과 기술의 합성어


|전산영어

ISP(Internet Service Provider)

: 개인이나 회사들이 인터넷에 접속하여 가상 호스팅, 웹 사이트 구축 등을 할 수 있도록 관련 서비스를 제공하는 회사


PnP

: 운영체제에서 새로 설치된 하드웨어를 자동으로 구성하는 능력과 관계되는 것


RIA(Rich Internet Application)

: 데스크톱 응용프로그램의 특성을 다수가 가지고 있는 웹 응용프로그램으로, 통상적으로 사이트 특정 브라우저 방식이 아니면 브라우저 플러그인, 독립 샌드박스 또는 가상머신을 통해 제공된다.(어도비플래시, 자바, 실버라이트)


NGN(Next Generation Network)

: 패킷화된 단일망을 통해 음성데이터와 IP 데이터 등 모든 서비스를 통합하는 차세대 네트워크


'Free' 카테고리의 다른 글

오늘의노래  (0) 2016.06.24
정보처리기사 실기 2015년 2회  (0) 2016.06.24
오늘의 노래  (0) 2016.06.21
팔 운동 루틴  (0) 2016.06.17
기타 데이터 베이스 실무 응용  (2) 2016.06.16

MYMP - say you love me

고등학교때 기타배워서 여친생기면 불러주려고 연습한 노래....ㅎㅎ

'Free' 카테고리의 다른 글

정보처리기사 실기 2015년 2회  (0) 2016.06.24
정보처리기사 실기 2015년 1회  (0) 2016.06.24
팔 운동 루틴  (0) 2016.06.17
기타 데이터 베이스 실무 응용  (2) 2016.06.16
등운동 루틴  (0) 2016.06.16

1. 바벨컬


2. 덤벨컬


3. 해머컬


'Free' 카테고리의 다른 글

정보처리기사 실기 2015년 1회  (0) 2016.06.24
오늘의 노래  (0) 2016.06.21
기타 데이터 베이스 실무 응용  (2) 2016.06.16
등운동 루틴  (0) 2016.06.16
어깨운동 루틴  (0) 2016.06.16

내장 SQL

- 내장 SQL이란 삽입 SQL이라고도 하며, 일반 응용 프로그램에 SQL을 삽입하여 데이터베이스 자료를 이용하고 다양한 조작을 할 수 있도록 한것

- 응용프로그램이 실행될 때 같이 실행되도록 호스트 프로그램 언어에 삽입된 SQL

- 호스트 프로그램 언어를 이용해 만든 프로그램에 내장되어, 데이터베이스를 이용할 수 있도록 하는 것


[특징]

- 'EXEC SQL' 문으로 시작하여 세미콜론(;)으로 종료한다.

- 호스트 프로그램 실행 시 같이 실행된다.

- 일반 SQL문은 실행 후 결과 값으로 여러 자료를 얻을 수 있지만 내장 SQL은 하나의 자료만 얻을 수 있다.


커서 Cursor

- 내장 SQL에 의해 얻은 값은 하나의 자료 단위로 처리된다. 따라서 여러 개의 자료를 그룹으로 처리하기 위해 커서를 이용


[관련 명령어]

- DECLARE : 사용할 커서를 선언하기 위한 명령어

- OPEN : 커서를 첫 번째 튜플로 이동하기 위한 명령어

- FETCH : 순서대로 처리하기 위해 커서를 다음 튜플로 이동하는 명령어

- CLOSE : 처리가 완료된 후 커서를 종료하는 명령어


[진행순서]

DECLARE - OPEN - FETCH - CLOSE


스토어드 프로시저(Stored Procedure)

- 스토어드 프로시저란 자주 수행해야 할 SQL 처리 과정을 미리 하나의 작은 프로그램으로 작성하여 데이터베이스에 저장해 두었다가 필요한 경우 호출하여 사용하기 위해 만들어 놓은 프로그램


[기본형식]

CREATE PROCEDURE 프로시저_이름

BEGIN

SQL 처리내용

END;


트랜잭션

- 데이터베이스 내에서 한꺼번에 모두 수행되어야 할 연산들의 집합으로 하나의 작업 처리를 위한 논리적 작업 단위


[트랜잭션의 성질]

- 원자성 : 트랜잭션 내의 연산은 반드시 모두 수행되어야 하며 그렇지 않은 경우 모두 수행되지 않아야 함

- 일관성 : 트랜잭션이 정상적으로 완료된 후 언제나 일관성 있는 데이터베이스 상태가 되어야 하며, 결과에 모순이 생겨서는 안됨

- 격리성 : 하나의 트랜잭션이 수행 중에는 다른 트랜잭션이 접근할 수 없고 각각의 트랜잭션은 독립적이어야 함

- 영속성 : 지속성이라고도 하며, 트랜잭션이 성공적으로 완료된 후 결과는 지속적으로 유지되어야 함


[트랜잭션 연산]

- COMMIT : 트랜잭션이 성공적으로 종료돈 후 수정된 내용을 지속적으로 유지하기 위한 연산

- ROLLBACK : 트랜잭션이 비정상적으로 수행되었거나 오류가 발생했을 때 수행 작업을 취소하고 이전 상태로 되돌리기 위한 연산


회복

- 손상된 데이터베이스를 손상되기 이전의 정상적인 상태로 복구시키는 작업


[회복기법]

- 즉시 갱신 기법 : 트랜잭션이 실행 상태에서 변경되는 내용을 바로 데이터베이스에 적용하는 기법

- 지연 갱신 기법 : 부분완료가 되면 로그의 내용을 토대로 데이터베이스에 적용하는 기법

- 검사 시점 기법 : 검사 시점을 지정하여 검사 시점까지 수행후 완료된 내용을 데이터베이스에 적용하는 기법

- 그림자 페이징 : 로그를 사용하지 않고, 페이지로 나누어 각 페이지마다 복사하여 그림자 페이지를 보관하는 기법


[REDO / UNDO]

- REDO : 트랜잭션이 수행되어 COMMIT이 되면 변경된 내용을 데이터베이스에 반영

- UNDO : 트랜잭션이 수행되는 도중 오류가 발생하거나 비정상적으로 종료되는 경우 트랜잭션이 시작된 시점으로 되돌아가는 과정


병행제어

- 병행 실행시 트랜잭션 간의 격리성을 유지하여 트랜잭션 수행에 문제가 발생되지 않도록 제어하는 것

- 대표적인 병행 제어의 방법 "로킹(Locking)"


[로킹]

- 병행 실행시 하나의 트랜잭션이 사용하는 데이터베이스 내의 데이터를 다른 트랜잭션이 접근하지 못하게 하는 것

- LOCK->트랜잭션 실행->트랜잭션 완료->UNLOCK



'Free' 카테고리의 다른 글

오늘의 노래  (0) 2016.06.21
팔 운동 루틴  (0) 2016.06.17
등운동 루틴  (0) 2016.06.16
어깨운동 루틴  (0) 2016.06.16
가슴운동 루틴  (0) 2016.06.16

1. 벤트 데드리프트


2. 풀오버


3. 원암로우

'Free' 카테고리의 다른 글

팔 운동 루틴  (0) 2016.06.17
기타 데이터 베이스 실무 응용  (2) 2016.06.16
어깨운동 루틴  (0) 2016.06.16
가슴운동 루틴  (0) 2016.06.16
정보처리기사 실기 14년 3회  (0) 2016.06.16

1.스탠딩 밀리터리 프레스


2. 시티드 덤벨 프레스


3. 레이즈


4. 벤트오버

'Free' 카테고리의 다른 글

기타 데이터 베이스 실무 응용  (2) 2016.06.16
등운동 루틴  (0) 2016.06.16
가슴운동 루틴  (0) 2016.06.16
정보처리기사 실기 14년 3회  (0) 2016.06.16
오늘의 노래  (0) 2016.06.15

+ Recent posts