DB1에서 a 라는 테이블을 만들었다면, DB2에서는 같은 이름, 같은 스키마를 가진 a라는 테이블을 만들 수 있나요?
전에 테스트 하였을 때 안되었었는데, 오늘 다시 테스트를 해보니 만들어집니다.
만들어지는 것이 정상인가요? 아닌가요? 테이블 스페이스를 따로 잡지 않았고, public에 만들었습니다.
PostgreSQL 에서는 데이터클러스트(initdb 명령으로 만들어지는 자료집단) 단위에서 유일한 자료들이 있고, 데이터베이스(create database로 만들어지는 자료집단) 단위에서 유일한 자료들이 있고, 스키마(네임스페이스) 단위에서 유일한 자료들이 있습니다.
테이블스페이스, 사용자 롤(Role), 데이터베이스는 하나의 데이터클러스트 안에서 유니크합니다.
즉, 같은 이름의 데이터베이스 접속 사용자이름은 하나의 데이터베이스 서버에 하나 이상 있을 수 없습니다.
데이터베이스 안에서는 스키마가 그렇고,
스키마 안에서는 테이블, 뷰, 기타 등등 각종 객체들이 그렇습니다.
즉, 데이터베이스가 틀리다면, 같은 이름의 테이블이 당연히 만들 수 있어야죠.
답변 감사드립니다. 전에 테스트 했던 내용이 잘못되었었나봅니다.