PostgreSQL中,database,schema,table之間關系


從邏輯上看,schema,table,都是位於database之下。

首先,在postgres數據庫下建立表(相當於建立在public schema下):

[pgsql@localhost bin]$ ./psql -d postgres
psql (9.1.2)
Type "help" for help.

postgres=# create table tab200(id integer);
CREATE TABLE
postgres=# \q

然后,再在tester數據庫下建立表(相當於建立在public schema下):

[pgsql@localhost bin]$ ./psql -d tester
psql (9.1.2)
Type "help" for help.

tester=# create table tab200(id integer);
CREATE TABLE
tester=# \q

然后,再在其他的數據庫下進行查看:

[pgsql@localhost bin]$ ./psql
psql (9.1.2)
Type "help" for help.

pgsql=# SELECT * FROM information_schema.tables WHERE table_name='tab200';
 table_catalog | table_schema | table_name | table_type | self_referencing_column_name | reference_generation | user_de
fined_type_catalog | user_defined_type_schema | user_defined_type_name | is_insertable_into | is_typed | commit_action 
---------------+--------------+------------+------------+------------------------------+----------------------+--------
-------------------+--------------------------+------------------------+--------------------+----------+---------------
(0 rows)

pgsql=# \q

然后,再在 postgres數據庫和tester數據庫下分別查看:

[pgsql@localhost bin]$ ./psql -d tester
psql (9.1.2)
Type "help" for help.

tester=# SELECT * FROM information_schema.tables WHERE table_name='tab200';
 table_catalog | table_schema | table_name | table_type | self_referencing_column_name | reference_generation | user_de
fined_type_catalog | user_defined_type_schema | user_defined_type_name | is_insertable_into | is_typed | commit_action 
---------------+--------------+------------+------------+------------------------------+----------------------+--------
-------------------+--------------------------+------------------------+--------------------+----------+---------------
 tester        | public       | tab200     | BASE TABLE |                              |                      |        
                   |                          |                        | YES                | NO       | 
(1 row)

tester=# \q
[pgsql@localhost bin]$ ./psql -d postgres psql (9.1.2) Type "help" for help. postgres=# SELECT * FROM information_schema.tables WHERE table_name='tab200'; table_catalog | table_schema | table_name | table_type | self_referencing_column_name | reference_generation | user_de fined_type_catalog | user_defined_type_schema | user_defined_type_name | is_insertable_into | is_typed | commit_action ---------------+--------------+------------+------------+------------------------------+----------------------+-------- -------------------+--------------------------+------------------------+--------------------+----------+--------------- postgres | public | tab200 | BASE TABLE | | | | | | YES | NO | (1 row)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM