본문 바로가기

프로그래밍 놀이터/Database14

[SQLite3] 03. SQL 고급 #2 [SQLite3] 03. SQL 고급 #2 이 글은 "빠르게 활용하는 모바일 데이터베이스 SQLite3” 이란 글을 보며 필요한 내용만 정리한 글입니다.자세한 내용은 책을 구매해서 보세요 9. 트리거 -DB TRIGGER 란 특정 테이블이나 뷰에 INSERT, DELETE, UPDATE 와 같은 데이터 조작 이벤트가 발생했을 때 자동으로 지정된 동작을 수행하게 하는 것이다. 트리거 활용 -syntaxCREATE TRIGGER [triggerName] [triggerTiming] [triggerOperation] ON [tableName]BEGIN [sqlOperations]END; triggerTiming 은 아래와 같다.BEFORE : 대상 테이블의 CUD 동작 직전에 트리거에서 지정한 동작이 수행된다.. 2018. 5. 19.
[SQLite3] 03. SQL 고급 #1 [SQLite3] 03. SQL 고급 #1 이 글은 "빠르게 활용하는 모바일 데이터베이스 SQLite3” 이란 글을 보며 필요한 내용만 정리한 글입니다.자세한 내용은 책을 구매해서 보세요 1. 관계형 데이터베이스 설계 -한 개의 Table 에 모든 정보를 담는 경우 다음과 같은 단점이 있다. 중복되는 정보가 저장된다. 레코드 간 구분 가능한 필드가 명확히 없다. ( Property 가 거의 같은 경우 ) -RDBMS 의 설계 원칙은 중복을 최소화하는 것이다.데이터 중복성(redundancy)과 일관적이지 않은 데이터 종속성(dependency)를 제거하는 규칙에 따라 정보를 여러 테이블에 저장되도록 테이블을 설계하고, 테이블간 공통된 값으로 서로 연결되게 한다. -테이블의 각 행을 구분하는 하나 이상의 .. 2018. 5. 18.
[SQLite3] 02. SQLite3 설치 [SQLite3] 02. SQLite3 설치 이 글은 "빠르게 활용하는 모바일 데이터베이스 SQLite3” 이란 글을 보며 필요한 내용만 정리한 글입니다.자세한 내용은 책을 구매해서 보세요 -SQLite3 은 프로그램에 라이브러리 형태로 포함되어 사용된다.SQLite 홈페이지에서 배포되는 SQLite3 라이브러리를 내려 받아 프로그램에서 사용 가능한 형태로 만들면 된다.기본적으로 SQLite3 라이브러리는 C 코드를 압축한 형태로 배포되므로 이를 컴파일할 수 있다면 어떤 OS 에서도 사용할 수 있다.윈도우, 리눅스, 맥 OS X 등에서는 컴파일된 바이너리 자체를 직접 내려 받을 수도 있다. SQLite3 라이브러리 SQLIte3 의 핵심 엔진으로 프로그램에서 이것을 이용해 DB 를 대상으로 CRUD 를 .. 2018. 5. 17.
[SQLite3] 01. SQLite 소개 [SQLite3] 01. SQLite 소개 이 글은 "빠르게 활용하는 모바일 데이터베이스 SQLite3” 이란 글을 보며 필요한 내용만 정리한 글입니다.자세한 내용은 책을 구매해서 보세요-SQLite3 는 안드로이드, 아이폰에서 채택되면서 모바일 환경에서 가장 널리 사용되는 DB 가 되었다. ( 파폭 브라우저, 드롭박스 등에서도 사용 )개발 초창기부터 임베디드 환경을 고려했기 때문에 SQLite3 는 다른 DB 의 대부분의 기능을 지원하면서도 상대적으로 라이브러리 크기가 작고, 메모리가 적은 환경에서도 뛰어난 성능을 발휘한다.오픈 소스 프로젝트이며, 특별한 라이선스 없이 무료로 사용 가능하다. 1. 주요 특징 단일 데이터베이스 파일 데이터베이스의 모든 정보가 단 하나의 파일에 저장된다.테이블 스키마, 레.. 2018. 5. 16.
sqlite 의 transaction mode 와 lock 의 종류 특성. sqlite 의 transaction mode 와 lock 의 종류 특성. - Transaction 은 deffered, immediate, exclusive 3가지 모드로 진행될 수 있다. - 기본 transaction 은 deffered 이다. - DEFFERED 의 lock 이 모드일 때 database 에 실질적인 action 이 있기 전까지는 lock 을 잡지 않는다. DB 에 read action 이 생기면 SHARED lock 이 걸린다. 반대로 DB 에 첫 write action 이 생기면 RESERVED lock 이 걸린다. - IMMEDIATE 의 lock 이 모드일 때는 begin 명령이 떨어지자마자 RESERVED lock 을 걸어버린다. 이 상태에서는 BEGIN IMMEDIATE .. 2014. 8. 31.