©
This document uses PHP Chinese website manual Release
你可以通过声明表的名字和所有字段的名字及其类型来创建表:
CREATE TABLE weather ( city varchar(80), temp_lo int, -- low temperature temp_hi int, -- high temperature prcp real, -- precipitation date date );
你可以在psql里连换行符一起键入这些东西。 psql可以识别该命令直到分号才结束。
你可以在SQL命令中自由使用空白(空格/tab/换行符)。 这意味着你可以用和上面不同的对齐方式(甚至在同一行中)键入命令。 双划线("--")引入注释,任何跟在它后面的东西直到该行的结尾都被忽略。 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;