PostgreSQL 사용 방법

[2021-1학기] PostgreSQL Version = 14.0: 강의의 연속성을 위해 이 Version만 사용하고 Update하지 않습니다.

[2020-2학기] PostgreSQL Version = 13.1

[Download]

[PostgreSQL Server]

  • 재시작: [명령창] pg_ctl -D "C:\Program Files\PostgreSQL\13\data" restart

= Data directory 예시 = C:\Program Files\PostgreSQL\13\data

= pg_ctl.exe가 있는 C:\Program Files\PostgreSQL\13\bin이 "환경 변수 > Path"에 등록되어야 함

  • Connect: pgAdmin > Object > Connect Server

  • Disconnect: pgAdmin > Object > Disconnect Server

= Servers > PostgreSQL 13을 선택하고 눌러야 함

  • Connect: pgAdmin > Object > Connect Database

  • Disconnect: pgAdmin > Object > Disconnect Database

= 끊고 싶은 DB를 선택하고 눌러야 함

[SQL 문법]

Basics

  • SQL은 대소문자를 구별하지 않으므로 모두 소문자로 작성해야 함

  • 예약어

= time: 변수명으로 쓰고 싶으면 "time"로 써야 함

SELECT

  • Table의 행 개수 얻기: SELECT COUNT(*) FROM table_name

  • Table의 특정 열 정보 얻기: SELECT head1 FROM table_name

  • Table의 여러 열 정보 얻기: SELECT head1, head2 FROM table_name

  • Table의 모든 정보 얻기: SELECT * FROM table_name

INSERT

  • 행에 데이터 저장: INSERT INTO table_name (head1, head2) VALUES (1, 1.1)

    • 행의 모든 원소에 데이터 저장: INSERT INTO table_name VALUES (1, 1.1)

TRUNCATE

  • 모든 행 지우기: TRUNCATE table_name

[Troubleshooting]

  • 설치 program 실행이 불가능함

= 현재 Windows 계정이 관리자(Administrator)인지 확인; 계정 이름은 반드시 영어이어야 함

  • 설치를 삭제해도 재설치가 되지 않음

= 수작업으로 삭제하면 안되고, 반드시 제어판 > 프로그램 제거로 삭제해야 함

= 실수로 수작업으로 삭제한 경우는 아래 절차를 따라서 직접 삭제해야 함: SC(service controller)와 registry 접근 필요

참고: https://stackoverflow.com/questions/36304198/cannot-reinstall-postgresql-because-windows-thinks-its-still-installed

SC로 pg 실행 확인(PostgreSQL 14.0 경우): sc query postgresql-x64-14

pg 실행을 확인할 수 없으면 모든 service를 열람해야 함: sc query

  • Python adapter가 Table을 찾지 못함

= SQL은 대소문자를 구별하지 않기 때문에 모두 소문자로 작성해야 함