PostgreSQL에서 현재 데이터베이스의 이름을 얻는 방법은 무엇입니까?


81

\c <database_name>PostgreSQL에서 사용 하면 명명 된 데이터베이스에 연결됩니다.

현재 데이터베이스의 이름을 어떻게 확인할 수 있습니까?

들어가기 :

my_db> current_database();

생산 :

ERROR:  syntax error at or near "current_database"
LINE 1: current_database();

7
current_database ()를 선택하십시오
Mihai

1
전에 SELECT를 추가하십시오.
Mihai

4
프롬프트에서 my_db이미 현재 데이터베이스를 알려줍니다.
a_horse_with_no_name

답변:


130

이 함수 current_database()는 현재 데이터베이스의 이름을 반환합니다.

 SELECT current_database();

SQL 함수이므로 SQL 문의 일부로 호출해야합니다. PostgreSQL은 독립 실행 형 쿼리로 함수 실행을 지원하지 않으며 CALL다른 SQL 엔진과 같은 명령문 이 없으므로 SELECT함수를 호출하는 데 사용합니다.


33

psql에서 "\ conninfo"를 사용할 수 있습니다


psql버전 9.1 부터 . psql하지만 요즘에는 기본적으로 모든 클라이언트를 포함해야합니다 .
dezso

26
\c

다음과 같은 것을 인쇄합니다

You are now connected to database "foobar" as user "squanderer".

새로운 연결을 만드는 것이 마음에 들지 않으면 이것을 사용하십시오. 모든 매개 변수가없는 \ connect (\ c로 단축)는 현재 연결과 동일한 새 연결을 만듭니다. 현재 연결이 닫혔습니다.

http://www.postgresql.org/docs/9.3/static/app-psql.html 의 \ connect 명령 사양을 참조하십시오 .

dbname, username, host 또는 port가 생략되면 (...) 이전 연결의 해당 매개 변수 값이 사용됩니다.


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.