본문 바로가기

반응형

db

(5)
[DB] 식별 관계와 비식별 관계 개요 ERD를 작성하다보면 테이블 간의 관계를 설정하면서 외래키를 사용해 다른 테이블과의 키를 공유하고 조인을 합니다. 외래키를 이용하여 관게를 정립하기 위해 식별 관계와 비식별 관계 전략이 있습니다. 식별 관계 식별 관계 : 부모 테이블의 기본 키나 유니크 키를 자식 테이블이 자신의 기본키로 이용 -> 부모 데이터가 존재해야지 자식 테이블에 데이터를 추가할 수 있습니다. 위 그림에서는 PK를 part_id로 가지고 PFK로 pc_id를 가집니다. 부모 테이블의 키를 기본키로 가지고 있어서 부모 테이블의 데이터가 있어야지 자식 테이블에 데이터를 추가할 수 있습니다. 장점과 단점 장점 데이터의 정합성 유지를 DB에서 검증 단점 구조 변경이 어려움 비식별 관계 비식별 관계 : 부모 테이블의 기본 키나 유니크..
[DB] tibero에서 job 사용하는 방법 DB에서 정기적으로 실행해야 하는 경우가 있습니다. 로그를 쌓는다거나 지표를 만들기 위한 쿼리가 있으면 linux의 crontab과 같이 잡을 생성하여 관리할 수 있습니다. 본 포스팅은 tibero를 기반으로 작성했으나 거의 모든 DBMS는 job을 비슷한 형태로 제공하므로 하나의 사용방법을 익히면 다른 DBMS에서도 금방 사용할 수 있습니다. 개요 DBMS_JOB은 PSM에서 사용 가능한 쿼리를 JOB에 등록하여 주기적으로 실행 할 수 있습니다. DBMS_JOB 패키지를 사용할 때 DBA 권한은 필요하지 않고 추가된 JOB은 오직 JOB 소유자만 실행하거나 변경할 수 있습니다. 특정 인스턴스에서 JOB을 실행하지 않도록 지정하는 기능은 지원하지 않습니다. JOB을 추가하거나 변경하는 경우 자동으로 커밋..
[DB] extract을 이용해 timestamp를 비교 및 일,시,분,초 추출하기 쿼리를 작성하다보면 날짜와 시간을 같이 비교해야 하는 경우가 발생합니다. sysdate는 날짜를, systime은 시간을 표시하고 systimestamp는 날짜와 시간을 표시합니다. systimestamp를 이용해 비교하고, 일, 시, 분, 초를 추출하도록 하는 방법입니다. oracle, tibero select EXTRACT ( DAY FROM SYSTIMESTAMP ) * 24 * 60 * 60 AS dd , EXTRACT ( HOUR FROM SYSTIMESTAMP ) * 60 * 60 AS hh , EXTRACT ( MINUTE FROM SYSTIMESTAMP) * 60 AS mm, EXTRACT ( SECOND FROM SYSTIMESTAMP) AS ss, EXTRACT ( DAY FROM TO..
[DB] 테이블 스페이스, 테이블, 컬럼 정보 조회하기(pg, mysql, oracle, tibero) 개발하다보면 테이블 스페이스의 용량이 얼마나 잡혀있는지, 사용 되어 있는지 확인하는 경우가 생깁니다. 혹은 테이블에 있는 컬럼 리스트를 뽑아봐야 하는 경우도 생기는데 필요한 쿼리를 정리합니다. 테이블, 컬럼 정보 Postgresql 1. 테이블 목록 조회 SELECT RELNAME AS TABLE_NAME FROM PG_STAT_USER_TABLES 2. 컬럼 목록 조회 select * from information_schema.columns where table_catalog = '데이터베이스명' and table_name = '테이블명' order by ordinal_position; 3. 기본키 조회 select cc.column_name as column_name from information_s..
DB 버전를 관리 코드로 하는 방법 - LIQUIBASE 소스 형상 관리는 git이나 svn으로 하고 ppt나 보고서도 버전을 관리를 합니다. DB에 대한 형상관리를 하는 방법이 없는지 고민하다가 프로젝트를 하면서 접하게 된 LIQUIBASE입니다. 리퀴베이스는 DB 스키마 변경을 버전별로 관리 할 수 있는 oepn source 입니다. - 주의 사항 - 리퀴베이스를 적용한 프로젝트의 데이터베이스 스키마를 직접 수정하는 일은 절대 없어야 합니다. 특징 데이터베이스 변경 문서 생성 기존 데이터베이스에서 시작할 수 있는 change log 생성 기능 데이터베이스끼리 비교 기능 데이터베이스에 반영한 update를 rollback 기능 자동 업데이트 또는 DBA가 직접 적용할 수 있는 sql 스크립트 생성 안전한 클러스터 데이터베이스 업데이트 운영 데이터와 다양한 테..

반응형