您可以通过指定表名以及所有列名及其类型来创建新表
CREATE TABLE weather ( city varchar(80), temp_lo int, -- low temperature temp_hi int, -- high temperature prcp real, -- precipitation date date );
您可以将此输入到带有换行符的 psql
中。psql
将识别到直到分号为止,该命令才结束。
空格(即空格、制表符和换行符)可以在 SQL 命令中自由使用。这意味着您可以以与上面不同的方式对齐命令,甚至可以将所有命令都放在一行中。两个破折号 (“--
”) 引入注释。它们后面的任何内容都会被忽略直到行尾。SQL 对关键字和标识符不区分大小写,除非标识符用双引号引起来以保留大小写(上面没有这样做)。
varchar(80)
指定一种可以存储长度不超过 80 个字符的任意字符串的数据类型。int
是普通的整数类型。real
是一种用于存储单精度浮点数的类型。date
应该是不言自明的。(是的,date
类型的列也名为 date
。这可能是方便的,也可能是令人困惑的 — 您自己选择。)
PostgreSQL 支持标准SQL类型 int
、 smallint
、 real
、 double precision
、 char(
、 N
)varchar(
、 N
)date
、 time
、 timestamp
和 interval
,以及其他通用类型和丰富的几何类型集。PostgreSQL 可以使用任意数量的用户定义数据类型进行自定义。因此,类型名称在语法中不是关键字,除非需要支持SQL标准中的特殊情况。
第二个示例将存储城市及其相关的地理位置
CREATE TABLE cities ( name varchar(80), location point );
point
类型是 PostgreSQL 特定的数据类型的一个示例。
最后,应该提到的是,如果您不再需要表或想要以不同的方式重新创建它,可以使用以下命令将其删除
DROP TABLE tablename
;
如果您在文档中看到任何不正确的内容、与您使用特定功能的经验不符或需要进一步澄清的内容,请使用 此表单 报告文档问题。