数据库通过将现实世界中的实体(如教授和大学)存储在表中来建模。每个表包含单一实体类型的数据。这样可以通过仅存储一次实体来降低冗余。例如,关于某家公司的详细信息只需要一行数据。最后,数据库可用于建模实体之间的关系。
SQL 是结构化查询语言(Structured Query Language),是一种用于在关系型数据库中存储、操作和检索数据的计算机语言。
SQL 是关系型数据库系统的标准语言。所有关系型数据库管理系统(RDBMS),如 MySQL、MS Access、Oracle、Sybase、Informix、Postgres 和 SQL Server,都使用 SQL 作为其标准数据库语言。
PostgreSQL 数据库
information_schema 是一个元数据库,保存着有关您当前数据库的信息。它并非 PostgreSQL 独有,在 MySQL 或 SQL Server 等其他数据库管理系统中也可用。您可以使用熟悉的 SELECT * FROM 语法查询 information_schema 中的多张表:
columns:关于当前数据库中所有表的所有列的信息
SELECT table_schema, table_name
FROM information_schema. tables ;
技术支持
table_schema | table_name
pg_catalog | pg_statistic
pg_catalog | pg_type
pg_catalog | pg_policy
pg_catalog | pg_authid
pg_catalog | pg_shadow
public | university_professors
pg_catalog | pg_settings
. . . 技术支持
SQL 中的命令
数据定义语言(DDL)
CREATE :创建一个新表或表的视图。
ALTER :修改现有表。
DROP :删除整个表或数据库中的其他对象。
数据操作语言(DML)
SELECT :从一个或多个表中提取特定记录。
INSERT :在现有表中创建一条记录。
UPDATE :修改表中的现有记录。
DELETE :删除表中的记录,甚至可以删除整个表。
查看特定表的列
information_schema 还在名为 "columns" 的表中保存列的信息。一旦您知道表名,就可以通过访问 "columns" 表来查询其列。
SELECT table_name, column_name, data_type
FROM information_schema. columns
WHERE table_name = 'pg_config' ;
技术支持
table_name | column_name | data_type
pg_config | name | text
pg_config | setting | text 技术支持
这里可以看到,系统表 pg_config 只有两列——大概用于存储名称-值对。
交互式示例
在本练习中,您只需要来自 'public' 模式的信息,它在 tables 和 columns 表中作为列 table_schema 指定。'public' 模式保存关于用户自定义表和数据库的信息。其他类型的 table_schema 保存系统信息——在这里,我们只关注用户自定义的内容。
您将获取当前数据库中所有表名的信息,同时将查询限制在 'public' 的 table_schema 中。
SELECT table_name
FROM information_schema. tables
WHERE table_schema = 'public' ;
技术支持
运行上述代码时,会得到如下结果:
亲自试一试 。
要进一步了解 SQL 中的关系型数据库,请观看我们课程 Introduction to Relational Databases in SQL 中的这段视频。
VIDEO
本内容摘自 DataCamp 的 Timo Grossenbacher 所授课程 Introduction to Relational Databases in SQL 。
欢迎查看我们的教程 Introduction to Indexing in SQL 。
数据库通过将现实世界中的实体(如教授和大学)存储在表中来建模。每个表包含单一实体类型的数据。这样可以通过仅存储一次实体来降低冗余。例如,关于某家公司的详细信息只需要一行数据。最后,数据库可用于建模实体之间的关系。
SQL 是结构化查询语言(Structured Query Language),是一种用于在关系型数据库中存储、操作和检索数据的计算机语言。
SQL 是关系型数据库系统的标准语言。所有关系型数据库管理系统(RDBMS),如 MySQL、MS Access、Oracle、Sybase、Informix、Postgres 和 SQL Server,都使用 SQL 作为其标准数据库语言。
PostgreSQL 数据库
information_schema是一个元数据库,保存着有关您当前数据库的信息。它并非 PostgreSQL 独有,在 MySQL 或 SQL Server 等其他数据库管理系统中也可用。您可以使用熟悉的SELECT * FROM语法查询information_schema中的多张表:SQL 中的命令
数据定义语言(DDL)
数据操作语言(DML)
查看特定表的列
information_schema还在名为 "columns" 的表中保存列的信息。一旦您知道表名,就可以通过访问 "columns" 表来查询其列。这里可以看到,系统表
pg_config只有两列——大概用于存储名称-值对。交互式示例
在本练习中,您只需要来自
'public'模式的信息,它在tables和columns表中作为列table_schema指定。'public'模式保存关于用户自定义表和数据库的信息。其他类型的table_schema保存系统信息——在这里,我们只关注用户自定义的内容。您将获取当前数据库中所有表名的信息,同时将查询限制在
'public'的table_schema中。运行上述代码时,会得到如下结果:
亲自试一试。
要进一步了解 SQL 中的关系型数据库,请观看我们课程 Introduction to Relational Databases in SQL 中的这段视频。
本内容摘自 DataCamp 的 Timo Grossenbacher 所授课程 Introduction to Relational Databases in SQL。
欢迎查看我们的教程 Introduction to Indexing in SQL。