logo

English

이곳의 프로그래밍관련 정보와 소스는 마음대로 활용하셔도 좋습니다. 다만 쓰시기 전에 통보 정도는 해주시는 것이 예의 일것 같습니다. 질문이나 오류 수정은 siseong@gmail.com 으로 주세요. 감사합니다.

[PostgreSQL] 간단 사용법

by digipine posted Nov 02, 2017
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print
대부분의 문법은 SQL 표준을 따르고 있다.
(CentOS에서 plus 부분을 enable하고 업데이트 하면 8.1.9 버전이 깔리게 되는데 이를 기준으로 한다.)
 
간단히 DB에 접속하는 방법만 나열하겠다.
> su postgres
# psql 접속할 database명
 
1. 테이블 생성
create table 테이블명 (field 설명);
ex> create table mytest (idnum serial primary key, name varchar(20) not null, test bigint default 0);
 
data type에 대한 문서는 이곳을 참고
 
2. 테이블 삭제
drop table 테이블명;
ex> drop table mytest;
 
3. 테이블 수정
alter table 테이블명 여러가지 조건
ex> alter table mytest rename name to nickname;
mytest 테이블의 name 필드명을 nickname으로 바꾼다.
 
테이블 수정에 대한 문서는 이곳을 참고
 
4. 게시물 등록, 삭제, 수정
이 부분에 대한 문서는 이곳을 참고
 
5. 인덱스 관련
인덱스 생성 : create index 인덱스명 on 테이블명(인덱스를 걸고 싶은 필드명);
ex> create index name_idx on mytest(name);
인덱스 삭제 : drop index 인덱스명;
ex> drop index name_idx;
 
인덱스에 대한 문서는 이곳을 참고
 
6. JOIN 관련
JOIN에 대한 문서는 이곳을 참고
 
7. 기타 PostgreSQL 명령어
콘솔에서의 명령어는 \?로 볼 수 있다.
대체적으로 많이 사용하게 되는 명령어는 다음과 같다.
 
\d - 현재 접속한 database의 모든 테이블과 sequence를 보여준다.
\d 테이블명 - 지정한 테이블의 속성과 이에 속한 index를 보여준다.
\di - 현재 접속한 database의 모든 index를 보여준다.
\di 인덱스명 - 지정한 인덱스의 속성을 보여준다.
\i 파일명 - 지정한 파일로부터 SQL 명령을 읽어 이를 수행한다.
\q - 콘솔을 종료한다.
 
sql과 함께 사용하는 명령어는 다음과 같다.
 
explain SQL문 - 지정한 SQL을 수행하면서 이 수행 과정을 보여준다.
explain analyze SQL문 - 지정한 SQL을 수행하면서 이 수행 과정을 보여주고 소요 시간을 보여준다.
 
콘솔에서 transaction을 사용할 수 있다.
먼저 transaction을 수행하려면 SQL의 표준과 같은 명령어를 입력한다.
# begin;
이 명령어를 입력하면 BEGIN이라는 응답이 표시된다. 이때부터 실행하는 모든 쿼리들은 원치 않으면 이 쿼리들이 실행되기 이전으로 되돌릴 수 있다.
transaction을 끝내려면 다음과 같은 명령어를 입력한다.
# commit;
또는
# rollback;
commit은 transaction이 실행되고 난 이후의 쿼리를 모두 DB에 적용시킨다는 의미이다.
rollbank은 transaction이 실행되고 난 이후의 쿼리를 모두 취소 한다는 의미이다.
단, 여기에서 rollback을 한다고 하더라도 sequence(간단하게 serial로 생성된 필드의 자동으로 입력되기 위한 값을 가지고 있는 테이블)의 값은 증가한 상태로 복원되지 않는다.
 
명령어는 아니지만 콘솔을 사용하면서 알아두면 편리한 것들.
- 각종 명령어를 입력하고 tab을 누르면 다음에 어떤 것이 오는 것을 선택할지 리스트로 보여준다(리눅스의 그것과 같음).
- 위로 키를 누르면 이전 명령어를 하나씩 보여준다(리눅스의 그것과 같음).
- page up, down, home, end 키 역시 리눅스와 같은 역할을 한다.
TAG •

List of Articles
No. Subject Author Date Views
22 MySQL 시작할때 No directory, logging in with HOME=/ 에러 해결 방법, 홈 디렉토리 변경 digipine 2021.05.06 1133
21 Docker를 통한 MySQL 설치하기 lizard2019 2021.04.15 871
20 Ubuntu mySql 완전 삭제하기 lizard2019 2021.04.15 1168
19 MySQL root 비밀번호 변경하기 (MySQL 5.7버전 이상) lizard2019 2019.06.10 3543
18 MySQL Data Backup - Database Dump 방법 및 복구 방법 엉뚱도마뱀 2017.11.18 1050
» [PostgreSQL] 간단 사용법 digipine 2017.11.02 5531
16 MySQL 5.7.x 버전 root 및 유저 암호(Password) 변경 digipine 2017.11.02 875
15 SQLite 활용 팁 3 - 다른 DB 테이블에 트리거 사용하기 digipine 2017.11.01 948
14 SQLite 활용 팁 2 - 트리거 실전 사용하기 digipine 2017.11.01 674
13 SQLite 활용 팁 2 - 트리거 실전 사용하기 digipine 2017.11.01 573
12 SQLite 활용 팁 1 - 트리거 활용하기 digipine 2017.11.01 611
11 Ubuntu에서 sqlite3 빌드 방법 digipine 2017.11.01 926
10 HTTP Multi Part Request Sample Format digipine 2017.11.01 912
9 서블릿(Servlet) 이란 무엇인가? siseong@naver.com 2017.11.01 757
8 Apache Tomcat 설치후 관리자 모드 실행 되지 않을때 문제 해결방법 digipine 2017.11.01 3281
7 Filter를 이용한 웹 프로그래밍 Filter 란 무엇인가? file siseong@naver.com 2017.10.31 4902
6 Eclipse, JSP, Beans 실습하기 digipine 2017.10.29 3313
5 MS Access MDB를 위한 DB Connection String digipine 2017.10.29 1943
4 Choosing a free database - DB2 digipine 2017.10.29 1471
3 [Oracle] SQL*Plus 개요,각종 명령어들 digipine 2017.10.28 1484
Board Pagination Prev 1 2 Next
/ 2