목록정보처리산업기사 (37)
판봉 개발 일기
큐(Queue) 선형 리스트의 한쪽에서는 삽입 작업이 이루어지고 다른 한쪽에서는 삭제 작업이 이루어지도록 구성한 자료 구조입니다. 가장 먼저 삽입된 자료가 가장 먼저 삭제되는 선입선출방식입니다. 시작과 끝을 표시하는 두개의 포인터가 있습니다. 프런트(F. Front) 포인터 - 가장 먼저 삽입된 자료의 기억공간을 가리키고 삭제 작업을 할때 사용함 리어(R ,Rear) 포인터 - 가장 마지막에 삽입된 자료의 위치 기억공간을 가리키고 삽입 작업을 할때 사용함 Queu의 응용 분야 - 창구 업무나 택시 정거창 처럼 서비스 순서를 기다리는 등의 대기행렬의 처리에 사용, 운영체제의 작업 스케줄링에 사용합니다 데크(Deque) 삽입과 삭제가 리스트의 양쪽 끝에서 모두 발생할 수 있는 자료구조 Double Ended..
스택의 개념 스택은 리스트의 한쪽 끝으로만 자료의 삽입, 삭제 작업이 이루어지는 자료구조이다. 스택은 가장 나중에 삽입된 자료가 가장 먼저 삭제되는 후입섭출(LIFO)방식으로 자료를 처리합니다. TOP -Stack으로 할당된 기억공간에 가장 마지막으로 삽입된 자료가 기억된 위치를 가리키는 요소입니다. 또한스택 포인터라고도 합니다. BOottom : 스택의 가장 밑입니다. 자료의 삽입(Push) M : 스택의 크기 Top : 스택 포인터 X : 스택의 이름 Overflow : 스택으로 할당받은 메모리 부분의 마지막 주소가 M번지라고 할때, TOP Pointer의 값이 M보다 커지면 스택의 모든 기억장소가 꽉 채워져있는 상태이기에 더 이상 자료를 삽입할수 없어서 Overflow를 발생시킵니다. 자료의 삭제(..
선형 리스트(Linear List) 선형 리스트는 배열과 같이 연속되는 기억장소에 저장되는 리스트를 말한다. 연접 리스트(Dense List) 또는 축차 구조(Sequential Structure)라고도 한다. 선형 리스트의 대표적인 구조 : 배열(Array) 특징 가장 간단한 자료 구조 접근 속도가 빠름 중간에 자료를 삽입하기 위해서는 연속된 빈 공간이 있어야 함 기억장소를 연속적으로 배정받기 때문에 기억장소 이용 효율은 밀도가 1로서 가장 좋다. 자료의 개수가 n개 일때 삽입시의 평균 이동 횟수는 (n+1)/2이고, 삭제 시 에는 (n-1)/2이다 삽입, 삭제 시 자료의 이동이 필요하여 작업이 번거롭습니다. 연결 리스트(Linked List) 연결 리스트는 자들을 반드시 연속적으로 배열시키진 않으며 ..
자료 구조의 정의 효율적인 프로그램을 작성할 때 가장 우선적인 고려사항은 저장공간의 효율성과 실행시간의 신속성입니다. 자료 구조는 프로그램에서 사용하기 위한 자료를 기억장치의 공간 내에 저장하는 방법과 저장된 그룹 내에 존재하는 자료 간의 관계, 처리 방법등을 연구 분석하는 것입니다. 자료의 표현과 그리고 그것과 관련된 연산 일련의 자료들을 조직하고 구조화 어떤 자료 구조에서도 필요한 모든 연산들을 처리할 수 있습니다. 자료 구조에 따라 프로그램 실행시간이 달라집니다. 자료 구조의 분류 선형구조 : 1.리스트 2 스택 3 큐 4 데크 / 1-1 선형리스트, 1-2 연결리스트 비선형구조: 1. 트리 2.그래프 자료 구조의 이용 정렬(sort) : 기억장치 내의 자료를 일정한 순서에 의해 나열 검색(Sear..
시스템 카탈로그(System Catalog)의 의미 시스템 그 자체에 관련이 있는 다양한 객체에 관한 정보를 포함하는 시스템 데이터베이스이다. 각 테이블은 각 사용자를 포함하여DBMS에서 지원하는 모든 데이터 객체에 대한 정의나 명세에 관한 정보를 유지하는 시스템 테이블이다. 데이터 정의어의 결과로 구성되는 기본 테이블, 뷰, 인덱스, 패키지, 접근 권한 등의 데이터베이스 구조 및 통계 정보를 저정합니다. 카탈로그가 생성되면 자료사전에 저장 되어 좁은 의미로는 카탈로그를 자료사전이라고도 합니다. 카탈로그에 저장된 정보를 메타 데이터라고합니다. 카탈로그의 특징 카탈로그 자체도 시스템 테이블로 구성되어 있어 일반 이용자도 SQL을 이용하여 내용을 검색할 수 있습니다. INSERT, DELETE,UPDATE문..
뷰(view)의 개요 사용자에게 접근이 허용된 자료만을 제한적으로 보여주기 위해 하나 이상의 기본 테이블로부터 유도된, 이름을 가지는 가상 테이블입니다. 저장장치 내에 물리적으로 존재하지 않고, 사용자에게는 있는 것처럼 간주됩니다. 데이터 보저작업, 처리과정 시험 등 임시적인 작업을 위한 용도로 활용됩니다. 조인문의 사용 최소화로 사용상의 편의성을 최대화합니다. 뷰(View)의 특징 기본 테이블로부터 유도된 테이블이기 때문에 기본 테이블과 같은 형태의 구조를 사용하며, 조작도 기본 테이블과 거의 같습니다. 가상 테이블이기 때문에 물리적으로 구현되어있지 않습니다. 데이터의 논리적 독립성을 제공할 수 있습니다. 필요한 데이터만 뷰로 정의해서 처리할 수 있어서 관리가 용이하고 명령문이 간단해집니다. 뷰를 통해..
내장 SQL(Embedded SQL)의 정의 내장 SQL은 응용 프로그램 내에 데이터베이스에서 사용하는 데이터를 정의하거나 질의하는 SQL 문장을 내포하여 프로그램이 실행될 때 함께 실행되도록 호스트 프로그램 언어로 만든 프로그램에 삽입된 SQL입니다. 내장 SQL의 특징 내장 SQL 실행문은 호스트 언어에서 실행문이 나타날 수 있는 곳이면 프로그램 어느곳에서나 사용 가능합니다 일반 SQL문은 수행 결과로 여러 개의 튜플을 반환하는 반면, 내장 SQL은 단 하나의 튜플만을 반환합니다. 내장 SQL문에 의해 반환되는 튜플은 일반 변수를 사용하여 저장할 수 있습니다. Host Program의 컴파일 시 내장 SQL문은 선행처리기에 의해 분리되어 컴파일 됩니다. 호스트 변수와 데이터베이스 필드의 이름은 같아도..
삽입문(INSERT INTO~) 삽입문을 기본 테이블에 새로운 튜플을 삽입할 때 사용합니다. 일반 형식 INSERT INTO 테이블명(속석명, 속성명2,...) VALUES (데이터1, 데이터2...); 대응하는 속성과 데이터는 개수와 data_type이 일치해야 합니다 기본 테이블의 모든 속성을 사용할땐 속성명을 생략할 수 있습니다. SELECT문을 사용하여 다른 테이블의 검색 결과를 삽입할 수 있습니다. 삭제문(DELETE FROM~) 삭제문은 기본 테이블에 있는 튜플들 중에서 특정 튜플(행)을 삭제할 때 사용합니다. 일반 형식 DELETE FROM 테이블명 WHERE 조건; 모든 레코드를 삭제할 때는 WHERE절을 생략합니다 모든 레코드를 삭제하더라도 테이블 구조는 남아 있기 때문에 디스크에서 테이..
SELECT문은 테이블을 구성하는 튜플(행)들 중에서 전체 또는 조건을 만족하는 튜플을 검색하여 주기억장치 상에 임시테이블로 구성하는 명령문입니다. 일반 형식 SELECT Predicate [테이블명. ] 속성명1,[테이블명.]속성명2,... FROM 테이블명1, 테이블명2,... [WHERE 조건] [GROUP BY 속성명1, 속성명2,...] [HAVING 조건] [ORDER BY 속성명 [ASC | DESC]]; SELECT절 - 속성명 : 검색하여 불러올 속성(열) 또는 속성을 이용한 수식을 지정함 --> 기본 테이블을 구성하는 모든 속성을 지정해야 할땐 '*'를 씁니다. --> 두개 이상의 테이블을 대상으로 검색할 땐 '테이블명.속성명'으로 표현합니다. - Predicate:불렁로 튜플 수를 제..
DDL DDL(Data Define Language, 데이터 정의 언어)은 SCHEMA, DOMAIN, TABLE, VIEW, INDEX를 정의 하거나 변경 또는 삭제할 때 사용하는 명령문 DDL로 정의돈 내용은 Meta-data가 되며, 시스템 카탈로그에 저장한다. 기본 테이블 이름을 가지고 있고 독자적으로 존재함 뷰 테이블 독자적 존재 불가, 기본 테이블로부터 유도된 이름을 가진 가상 테이블 임시 테이블 질의문 처리 결과로 만들어진 테이블로 이름을 가지지 않음 CREATE SCHEMA 스키마를 정의하는 명령문 스키마의 식별을 위해 스키마 이름과 소유권자나 허가권자를 정의함 표기형식은 다음과 같습니다. CREATE SCHEMA 스키마_이름 AUTHORIZATION 사용자_id; CREATE DOMAIN..