반응형

데이터베이스 26

[ADO.NET 실습, 포트폴리오] 데이터베이스를 활용한 응용 프로그램 만들기

[ADO.NET 실습, 포트폴리오] 데이터베이스를 활용한 응용 프로그램 만들기 실습일시2018년 12월 26일~ 28일훈련생 과정명LG CNS 스마트 팩토리 과정평가유형포트폴리오교과목DB 실무1훈련교사 장 문 석 (인)기술DB설계 및 활용요구사항관계를 갖는 데이터베이스를 설계 및 구축하시오.해당 데이터베이스를 활용하는 응용 프로그램을 작성하시오. 단, 응용 프로그램에서 데이터베이스에 접근할 때 저장 프로시저를 사용하는 부분이 있어야 한다. * 포토플리오에 데이터베이스 다이어그램을 도식하고 테이블과 관계에 관한 간단한 설명을 기재하시오.* 정의한 저장 프로시저의 이름과 인자를 명시하고 이에 관해 간단한 설명을 기재하시오.* 응용 프로그램의 구조와 실행 화면을 포함하시오.내용 참고 파일

[데이터베이스] 분산 데이터베이스

분산 데이터베이스 분산 데이터베이스 네트워크를 통해 여러 개의 컴퓨터에 분산한 데이터베이스를 하나의 논리적 시스템으로 구성하는 데이터베이스 위치 투명성, 중복 투명성, 병행 투명성, 장애 투명성을 제공하는 것이 목표입니다. 위치 투명성(Location Transparency) 트랜잭션은 특정 데이터 항목의 위치에 독립적임 중복 투명성(Replication Transparency) 트랜잭션이 데이터의 중복 개수나 중복 사실을 몰라도 데이터 처리가 가능 복재 투명성이라고도 부릅니다. 병행 투명성(Concurrency Transparency) 다수의 트랜잭션이 동시에 수행해도 트랜잭션의 결과는 영향을 받지 않음 장애 투명성(Failure Transparency) 트랜잭션, DBMS, 네트워크, 컴퓨터 장애가 ..

[데이터베이스] 병행 제어(Concurrency Control)

병행 제어(Concurrency Control) 트랜잭션 병행 제어(Concurrency Control) 둘 이상의 트랜잭션을 수행하였을 때 발생하는 문제점을 극복하기 위해 제어하는 것 트랜잭션 병행할 때의 문제점 갱신 분실(Lost Update) 모순성(Inconsistency) 연쇄 복귀(Cascading Rollback) 비완료 의존성(Uncommitted Dependency) 트랜잭션 병행 제어의 목적 데이터베이스 일관성 유지 데이터베이스 공유 최대화 시스템의 활용도 최대화 사용자에 대한 응답시간 최소화 병행제어 기법 락킹(Locking), 타임 스탬프 순서화(Time stamp Ordering), 낙관적 기법, 다중 버전 기법 락킹(Locking) 하나의 트랜잭션이 데이터를 액세스하는 동안 다른..

[데이터베이스] 트랜잭션(Transaction)

트랜잭션(Transaction) 트랜잭션(Transaction) 데이터베이스 응용에서 하나의 논리적 기능을 구성하는 연산의 집합을 말합니다. 원자성(Atomicity), Consistency(일관성), 지속성(Drurability), 독립성(Isolation) 특징을 갖습니다. Commit 연산으로 트랜잭션 작업을 성공으로 완료한다. Rollback 연산으로 트랜잭션 도중에 수행한 모든 연산을 취소한다. 원자성(Atomicity) 트랜잭션의 일부만 수행한 상태로 종료할 수 없다. Consistency(일관성) 트랜잭션을 완료하면 일관상 있는 데이터베이스 상태로 변환한다. 시스템이 가지고 있는 고정 요소는 트랜잭션 수행 전과 수행 후의 상태가 같아야 한다. 지속성(Drurability) 트랜잭션을 완료한 ..

[데이터베이스] 관계 대수(Relation Algebra)

관계 대수(Relation Algebra) 관계 대수(Relation Algebra) 원하는 데이터를 얻기 위해 어떻게 질의를 수행할 것인지를 기술하는 절차적 언어 참고) 관계 해석(Relation Calculus)은 수학의 Predicate Calculus을 기반으로 관계 데이터베이스를 처리하는 기능과 능력면에서 관계대수와 동등합니다. 튜플 해석과 도메인 관계 해석이 있고 관계대수와 대표적인 차이점은 비절차적 특성입니다. 일반집합 연산자 합집합, 교집합, 차집합, 교차곱 연산이 있음 합집합(UNION) 두 개의 릴레이션 중에 하나의 릴레이션에라도 튜플들로 구성 R U S = { t | t∈R V t∈S } |R U S|

[데이터베이스] 정규화(Normalization)

정규화(Normalization) 정규화(Normalization) 서로 상이한 정보가 발생하기 않게 종속 관계를 분석하여 릴레이션을 분리하는 과정 이상(Anomaly)을 제거하기 위해 중복성 및 종속성을 배제하는 방법으로 사용 어떠한 관계라도 데이터베이스 내에서 표현 가능하게 만든다. 데이터 삽입 시 관계를 재구성할 필요성을 줄인다. 효과적인 검색 알고리즘을 생성할 수 있다. 이상(Anomaly) 여러 종류의 종속 관계를 하나의 관계로 표현할 때 발생 속성 사이에 종속 혹은 튜플의 중복때문에 발생 삽입 이상: 데이터를 삽입할 때 원하지 않는 값도 삽입하는 현상 삭제 이상: 관계에서 한 튜플을 삭제할 때 상관없는 값들도 함께 삭제가 발생하는 현상 갱신 이상: 관계에서 튜플의 속성을 갱신할 때 일부 정보만..

[데이터베이스] 데이터 사전(Data Dictionary)

데이터 사전(Data Dictionary) 이번에는 정보처리기사 필기 과목인 데이터베이스에서 데이터 사정(Data Dictionary)를 알아보아요. 데이터베이스 관리자(DBA)가 데이터베이스 스키마를 정의하면 DDL 번역기에 의해 시스템 카탈로그를 데이터 사전에 기록 데이터 사전(Data Dictionary) 데이터베이스의 스키마를 저장하는 곳 데이터 사전 또한 데이터 베이스 시스템만 접근할 수 있는 영역으로 사용자는 접근할 수 없다. 시스템 카탈로그를 저장하는 곳 시스템 카탈로그 데이터베이스의 스키마를 저장하는 시스템 데이터베이스(테이블, 뷰, 데이터베이스, 뷰, 사용자, 접근 권한을 포함) 일반 사용자도 SQL을 이용하여 검색할 수 있다. 데이터 사전에 수록한 데이터를 실제로 접근할 때 필요한 정보..

[데이터베이스] 뷰(View)

뷰(View) 이번에는 정보처리기사 필기 과목인 데이터베이스의 뷰를 알아보아요. 뷰(View) 하나 이상의 테이블에서 유도한 논리 테이블 물리적으로 제공하지 않고 논리적으로 제공한다. 논리적 독립성을 제공한다. 관리가 쉽고 명령이 간단하다. 중요 데이터를 생략하여 보여줄 수 있다. 기본키를 포함하지 않으면 삽입, 삭제, 갱신할 수 없다. ALTER 명령으로 구조를 변경할 수 없다. 뷰를 기초하여 다른 뷰를 만들 수 있다. 만약 기초로 정의한 뷰를 제거하면 이를 기초로 정의한 모든 뷰도 자동 삭제한다. *CREATE 로 생성하고 DROP으로 삭제하는 것은 이미 앞에서 다뤘습니다. *너와 나의 연결고리 "공감"

[데이터베이스] 내장 SQL (Embedded SQL)

내장(Embedded) SQL 이번에는 정보처리기사 필기 과목인 데이터베이스에서 내장 SQL을 알아보아요. 내장(Embedded) SQL 응용 프로그램에서 데이터베이스를 사용하기 위해 표현하는 SQL구문 호스트 변수는 SQL변수와 구분하기 위해 콜론(:)을 앞에 붙인다. 'EXEC SQL'을 앞에 붙여 다른 호스트 명령문과 구분한다. 호스트 변수의 데이터 타입은 이에 대응하는 필드의 SQL 데이터 타입과 일치해야 한다. 호스트 시행문이 나타날 수 있는 곳이면 어디에서나 사용할 수 있다. SQL문은 주언어 변수의 참조를 사용할 수 있다. 컴파일보다 우선하는 전처리기에 의해 처리한다. *위는 정보처리기사 필기 문제에서 나온 보기를 정리한 것일 뿐입니다. 실제 언어에 따라 내장 SQL을 표현하는 방법은 비슷하..

[데이터베이스] 데이터 조작어(DML)

데이터 조작어(DML) 이번에는 정보처리기사 필기 과목인 데이터베이스의 데이터 조작어를 살펴볼게요. 데이터 조작어(DML, Data Manupulation Language) INSERT : 테이블에 새로운 튜플을 추가 DELETE: 테이블에서 조건에 맞는 튜플을 제거 UPDATE: 테이블에서 조건에 맞는 튜플을 수정 SELECT: 원하는 조건에 맞는 튜플을 검색 INSERT INTO 테이블명(속성명, ...) VALUES(값,...); 예: INSERT INTO 학생(학번, 이름, 나이) (20160734, '홍길동', 20) ; DELETE FROM [테이블 명 WHERE 조건]; 전체 삭제: DELETE FROM 학생 DELETE로 모든 레코드를 삭젝하여도 테이블 구조는 남아있어 DROP과는 다릅니다..

반응형