본문 바로가기

Develop/Database17

[Database] Join 정리 오늘은 간단하게 Join에 대해 정리해 보고자한다. Join은 크게 다섯가지로 생각하면된다. 아래 그림을 보자. 보시면 집합의 개념으로 Join을 이해하면 쉽게 이해할수 있다. 먼저 Inner Join 같은 경우에는 집합의 교집합과 같다. 조인이 되는 키를 기준으로 둘 이상의 테이블에 존재하는 데이터를 조회하는 것이고, 보통 Simple Join이라고 부르기도 한다. 여기서 Null 인 데이터는 포함되지 않는다. 사용 예시는 아래와 같다. SELECT * FROM TABLE1 t1 INNER JOIN TABLE2 t2 ON (t1.key=t2.key); 다음 Outer Join은 두테이블에서 지정된 쪽 ( Left or Right or Full) 의 모든 결과를 보여주면서 반대쪽에 매칭되는 쪽까지 보여주.. 2021. 8. 21.
[Database] 트랜잭션이란 뭘까? 오늘은 트랜잭션에 대해 정리를 해두려한다. 트랜잭션(Transaction)이란? 트랜잭션(Transaction)의 정의를 내려보자면, 트랜잭션은 Database의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업 단위나 한번에 수행되어야할 일련의 연산을 의미한다. 트랜잭션(Transaction)의 특징 트랜잭션의 특징으로는 첫째, Database 시스템에서 병행제어 및 회복 작업이 수행될 때 처리 되는 작업의 논리적 단위 이며, 둘째, 사용자가 어떠한 시스템에 서비스를 요청할 때 시스템이 응답하기 위한 상태 변환 과정의 작업단위 이고, 셋째, 각 트랜잭션은 Commit 혹은 Rollback 되어야 한다. 여기서 Commit 연산은 하나의 논리적인 단위인 트랜잭션에 대한 작업이 성공적으로 끝났으며.. 2021. 8. 7.
[PostgreSQL] 외부접속 가능하게 설정하기 오늘은 PostgreSQL 에서 외부에서 접속이 가능하도록 하는 설정을 정리해두려고 한다. 혹시 설치하는 방법이 궁금하면 아래의 링크를 보고 따라해보면 금방 알수 있다. https://devkingdom.tistory.com/266 먼저 해줘야할게 postgreSQL의 기본 포트인 5432 방화벽 포트를 개방해줘야한다. firewall-cmd --permanent --zone=public --add-port=5432/tcp firewall-cmd --reload 방화벽을 열고나면 두가지 설정파일의 정보를 변경해줘야한다. db같은 경우에는 특정 아이피만 접속하게 해주는게 맞는데, 실습이니... 전체 구간에 대해 접속이 가능하도록 우선 바꿔주려 한다. 다음은 postgre에 접속하여 data 디렉토리의 위치.. 2021. 8. 2.
[PostgreSQL] PostgreSQL 설치 및 기본 동작 방법 오늘은 리눅스 환경 (CentOS7) 에서 간단하게 PostgreSQL을 설치하고 기본적으로 운영하는 방법에 대해 포스팅 해보려고 한다. 먼저 설치전에 yum udate를 해주자. yum update -y 다음은 만약 인터넷 환경이 되신다면 yum install을 통해서 PostgreSQL 을 설치하자. sudo yum install -y postgresql-server.x86_64 postgresql-devel.x86_64 postgresql-contrib.x86_64 postgresql-docs.x86_64 다음은 잘 설치 되었는지 확인을 해보자. yum list insalled | grep postgresql 다음은 db 계정을 만들어주자. 아래 명령어를 쳐주면 postgres라는 이름으로 db가 .. 2021. 8. 2.
[MySQL] MySQL5.7 에서 계정 생성하고 권한 부여하기 하이 ㅎㅎ 오랜만에 글을 쓰려 한다. 항상 오라클 에서만 DB 작업을하다가 MySQL에서 오랜만에 하려고하니.. 굉장히 헷갈린다. 그래서 조금씩 필요한 것들을 정리해보려고 한다. 오늘은 MySQL5.7 에서 계정을 생성하고, 권한을 부여하는 걸 정리해보려고 한다. 계정 생성을 위한 DB 접속 use mysql; 계정 생성 insert user(host, user, authentication_string, ssl_cipher, x509_issuer, x509_subject) values ('localhost' , '계정명', password('패스워드'), '', '', '' ); 권한 부여 grant all *.* to dtdba@localhost identified by '계정명'; 그냥 전 권한을 줘.. 2020. 6. 23.
[Oracle] 오라클에서 날짜 검색하는 방법 정리 1.Date 자료형 데이터 -> 문자열로 변경 후 조회 SELECT * FROM MY_TABLE WHERE TO_CHAR(MY_DATE, 'YYYYMMDD') > '20200511') SELECT * FROM MY_TABLE WHERE TO_CHAR(MY_DATE, 'YYYYMMDD') Date 형으로 변경후 조회 SELECT * FROM MY_TABLE WHERE MY_STR_DATE > TO_DATE('20200511') SELECT * FROM MY_TABLE WHERE MY_STR_DATE < TO_DATE('20200511') SELECT * FROM MY_TABLE WHERE MY_STR_DATE BETWEEN TO_DATE('20200509') AN.. 2020. 5. 11.
[Database] 윈도우 10에 sql developer 설치하기 지난 포스팅에서 내가 oracle 11g를 설치하고 cmd로 실행시켜 봤었다. https://devkingdom.tistory.com/134 [Database] 윈도우 10에 Oracle 11g 설치하기 하이 ! 데이터베이스를 좀 생겼다. 그래서 정말 익숙하게 사용하던 Oracle 11g를 오늘 설치하고 접속해 볼거다. 먼저 oracle 다운로드 사이트에 접속하도록 하자. 아래링크에서 받을 수 있다. https://www.oracle... devkingdom.tistory.com 그런데 cmd로 sql 을 쓰면 굉장히 불편하다. 그런 불편을 덜어줄 프로그램이 바로 sql developer이다. 차근 차근 따라해서 잘 설치해보도록하자. 먼저 oracle 사이트로 가서 프로그램을 설치해주자. 나는 이미 자바.. 2020. 5. 10.
[Database] 윈도우 10에 Oracle 11g 설치하기 하이 ! 데이터베이스를 좀 생겼다. 그래서 정말 익숙하게 사용하던 Oracle 11g를 오늘 설치하고 접속해 볼거다. 먼저 oracle 다운로드 사이트에 접속하도록 하자. 아래링크에서 받을 수 있다. https://www.oracle.com/kr/database/technologies/oracle-database-software-downloads.html#11g 여기서 중요한건 File 1, File 2 둘다 받아줘야 한다는 것이다. 다음은 압축을 풀어서 한 곳에 몰아 넣어주자. 그렇게 하고 나서 아래와 같은 디렉토리 구조가 되면 성공이다. setup 을 눌러주자. 자 이 화면이 잠시 뜨고 ... 환경이 최소 요구사항을 충족하지 않았다고 하지만 그래도 "예" !! 나는 보안 갱신 수신을 하지 않을꺼라 체.. 2020. 5. 10.