본문 바로가기

프로그래밍 언어/데이터베이스

(4)
[SQLITE] 명령어 정리. 자꾸 까먹어서 인터넷 검색을 하는게 싫어서 정리합니다 -_-; SHELL 명령어 .tables : 테이블 목록을 보여준다. .schema [table_name] : CREATE문을 보여준다. SQL 명령어 select * from sqlite_master; :
[오라클-튜닝]. 유용한 스크립트 모음 데이터베이스 사랑넷에 있는 글이었던 걸 옛날 블로그에서 펌질했었죠. 옛날 블로그에서 다시 옮겨옵니다. (아직 유효한 정보인지 모르겠지만 옛날 블로그 폐쇄를 위해...) 테이블이 사용중인 블록 크기를 계산해주는 SQL /* ** Table이 사용하는 블럭 크기를 구하는 스크립트... ** ** 사용법 : 1) DBA 권한으로 로그인한다. ** 2) SQL> @tab_block [table명] ** ** Notice : sum(blocks)는 사용하는 블럭의 갯수이며 사이즈는 db_block_size를 ** 곱하여 얻을 수 있다. */ SELECT OWNER, TABLESPACE_NAME, SEGMENT_NAME, SUM(BLOCKS) FROM DBA_EXTENTS WHERE SEGMENT_NAME = UP..
[SQLite] 리눅스에서 스크립트 백업 & 복구 안드로이드는 데이터베이스로 SQLite3를 사용한다. sqlite3 은 가볍게 사용할 수 있어 임베디드에서 많이 사용하는 오픈소스 데이터베이스 엔진이다. 프로젝트에서 DB가 필요한데 sqlite 에 직접 insert하기 귀찮아 스크립트로 sql을 생성했더니 sqlite3에 넣을 방법이 필요했다. 노가다로 붙여넣기 신공을 사용하려 했으나 아주 간단하게 처리가 가능했다. linux만을 전제한다. 1) sql 명령어 set으로 backup받는 경우 echo ".dump" | sqlite3 mydb.db > backup.script 2) sql 명령어 집합으로 db 파일 만들기 sqlite3 < backup.script (backup.script는 SQL로 이루어진 text 파일이다) 허접한 글이지만, 도움이 ..
자연키(Natural Key) 대 대체키(Surrogate Key) 오랜만에 DB를 만지게 되었다. sqlite3의 내부 구조를 모르지만, File DB라고 들었는데 성능을 위한 옵션 같은것이 분명 존재할 것 같다. 어쨌거나 모바일에서 테이블 한두개 만드는데 문제가 되겠냐만, 옛날 DB 공부할 때 생각에 Primary Key를 Natural Key로 할 지, Surrogate Key로 할지에 대해 고민해봤다. 생각보다 입맛에 딱 맞는 자료를 못찾아 그냥 내 맘데로 생각을 풀어본다. 먼저 자연키가 무엇이고 대체키가 무엇인지부터 정리해보기로 한다. 기본키 ( Primary Key ) : 테이블에서 레코드를 유일하게 식별하는 데 가장 적합한 후보키(Candidate Key) 자연키 ( Natural Key ) : 테이블을 이루는 컬럼들 가운데 의미를 담고 있는 후보키 대체키 ..