Psql은 PostgreSQL의 Command Line Interface입니다. [시작]-[모든프로그램]-[PostgreSQL 9.4]에서 SQL shell(psql)실행파일을 더블 클릭하여 실행시키면 다음과 같은 화면이 실행된다.
cmd창이 시작되면 사용할 Server, Database, Port, Username, Password를 입력합니다. 입력을 마치면 데이터베이스에 접속한 것을 확인할 수 있다.
psql의 명령어에 대한 정보를 얻고 싶을 때는 먼저 cmd창에 \? 를 입력하면 명령어에 대한 정보를 얻을 수 있다.
SQL명령어에 대한 정보를 얻고 싶을 때는 cmd 창에 \h 를 입력하면 SQL명령어에 대한 정보를 얻을 수 있다.
서버에 접속되어 있는 Database의 목록을 확인하려면 \l 을 누르면 확인할 수 있다.
Information Command는 쿼리를 실행하지 않고 예약되어 있는 명령어를 실행함으로써 Database 및 스키마 오브젝트의 다양한 정보를 조회할 수 있는 매우 유용한 명령어이다. Information Command를 실행하는 방법은 \d와 오브젝트를 의미하는 알파벳으로 구성 되어있다.
먼저 Database내의 Relation의 정보를 확인하고 싶을 때는 \d를 입력한다..
그리고 Relation에 대한 더 자세한 정보를 확인하고 싶을 때는 \d+를 입력한다.
Database내의System table에 대해서 확인하고 싶을 때는 \dS를 입력한다.
Database내의 table에 대해서 확인하고 싶을 때는 \dt를 입력하여 확인한다.
Database내의 view에 대해서 확인하고 싶을 때는 \dv를 이용하여 확인할 수 있다.
그 외에도 \d에 l를 붙이면 Large object, i를 붙이면 인덱스, f는 function, n는 schema를 조회할 수 있다.
서버에 접속되어 있는 다른 Database에 접속하려면 \c DBNAME을 입력하면 다른 Database에 접속할 수 있다. Ex) \c template1
psql을 종료할 때는 \q 을 입력하면 종료됩니다.
psql에서 \e 를 입력하면 psql.edit 메모장파일이 열려 Query를 수정하고 수정한 내용을 실행할 수 있다.
수정이 완료되면 결과 표시가 나타납니다. pgAdmin3 Tool에서도 edit된 것을 확인할 수 있다.
Psql은 변수를 사용할 수 있다. 변수의 name과 value를 사용하면 된다. 사용방법은 \set name value 로 입력하면 됩니다. Ex) \set city Edmonton
Psql에는 세팅을 변경할 수 있는 특별한 Variable이 있다.
AUTOCOMMIT, ENCODING, HISFILE, ON_EFFOR_ROLLBACK, ON_ERROR_STOP, PROMPT1, VERBOSITY 등이 special variable 이다. Ex) \set AUTOCOMMIT off
- 강좌 URL : http://www.gurubee.net/lecture/2930
- 구루비 강좌는 개인의 학습용으로만 사용 할 수 있으며, 다른 웹 페이지에 게재할 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^
- 구루비 강좌는 서비스 제공을 위한 목적이나, 학원 홍보, 수익을 얻기 위한 용도로 사용 할 수 없습니다.