본문 바로가기

데이타베이스24

[SQLite]Database is locked 이번 포스팅에서는 SQLite를 이용해서 파일 DB 사용 시 종종 발생하는 Database is locked 오류에 대해 정리해 보겠습니다. 응용프로그램에서 1초에 대량의 포인터 정보를 파일 DB에 저장하면서 발생한 에러이며 파일 DB에서 문제가 발생한 파일들을 찾아 이를 해결해 주면 간단하게 해결할 수 있습니다. 예외 메시지는 아래와 같이 SQLiteException을 출력합니다. 예외 발생: 'System.Data.SQLite.SQLiteException'(System.Data.SQLite.dll) code = Busy (5), message = System.Data.SQLite.SQLiteException (0x800007 AF): database is locked database is locked.. 2020. 11. 28.
트랜잭션(Transaction) 정리 이번 포스팅에서는 트랜잭션(Transaction)에 대해서 알아보겠습니다. 트랜잭션은 데이터베이스에서 일어나는 연산의 집합으로 하나의 논리적인 기능을 수행하기 위한 작업의 단위입니다. 데이터베이스의 상태를 하나의 일관된 상태에서 다른 일관된 상태로 변화시키며, 하나의 트랜잭션은 완료(Commit)되거나 실패 시 복귀(Rollback)되어야 합니다. 트랜잭션의 특성에는 원자성(Atomicity), 일관성(Consistency), 독립성(Isolation), 영속성(Durability) 등이 있습니다. 먼저 원자성은 트랜잭션의 가장 중요한 성질로 트랜잭션이 연산의 집단을 의미하지만, 논리적으로 하나라는 의미를 가집니다. 또한 분리해서 처리할 수 없고, 일부 완료라는 것은 존재하지 않으며 연산의 결과가 모두 .. 2020. 7. 3.
관계 데이터베이스의 키 제약사항과 무결성 이번 포스팅에서는 관계 데이터베이스의 키 제약사항에 대해서 알아보겠습니다. 키(Key)는 각각의 튜플을 유일하게 구분할 수 있는 개념으로 관계형 데이터 모델에서는 대단히 중요한 개념입니다. 키는 유일한 식별성과 최소성을 가지고 있어야 하며 하나의 릴레이션에는 최소한 하나의 키가 있어야 합니다. 키(Key)의 종류에는 후보키(Candidate Key), 기본키(Primary Key), 대체키(Alternate Key), 외래키(Foreign Key), 수퍼키(Super Key) 등이 있습니다. [학생] 릴레이션 학번 이름 연락처 주민번호 수험번호 1111 홍길동 02-0000-0000 000000-0000000 0000 1112 아무개 032-1111-1111 111111-1111111 9999 1113 .. 2020. 7. 2.
관계 데이터베이스 용어 정리 이번 포스팅에서는 관계 데이터베이스에서 사용되는 용어들에 대해서 알아보겠습니다. 관계 데이터베이스는 데이터 간의 관계를 테이블 구조로 나타내는 데이터베이스로서 개체를 표현하는 데 있어 속성과 속성 간의 연관 관계를 파악하여 테이블의 형태로 표현합니다. 또한 개체와 개체 사이의 연관 관계도 테이블 형태로 표현할 수 있습니다. 아래 그림을 통해서 관계 데이터베이스를 구성하는 각 부분들을 확인해 보겠습니다. 속성(Attribute) : 어떤 개체 정보의 특성이나 특징에 대한 이름을 의미하여 프로그래밍 시 변수에 해당하는 개념으로 파일 시스템에서 레코드 필드에 해당하는 개념입니다. 도메인(Domain) : 한 속성(Attribute)의 의미로 들어오는 실제 값(원자값)들의 집합을 의미하며 변수를 선언하게 되면 .. 2020. 7. 1.