↑↓ 选择 ↵ 打开 ⌫ 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

受支持版本: 当前版本 (18) / 17 / 16 / 15 / 14
测试与开发版本: 19 / devel
不受支持的版本: 13 / 12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2
历史版本PostgreSQL 7.2 已于 2007 年 2 月结束社区维护,本页译文保留供仍在使用旧版本的读者参考。新系统请看当前版本。

2.4. 向表中填充行 #

INSERT语句用于向表中填充行:

INSERT INTO weather VALUES ('San Francisco', 46, 50, 0.25, '1994-11-27');

注意所有数据类型都使用相当明显的输入格式。不是简单数值的常量通常必须用单引号(')包围,就像例子中那样。 date 列实际上接受相当灵活的输入,但在本教程中我们将坚持使用这里所示的明确格式。

point类型要求一个坐标对作为输入,如下所示:

INSERT INTO cities  VALUES ('San Francisco', '(-194.0, 53.0)');

到目前为止所用的语法要求你记住列的顺序。另一种语法允许你显式列出列:

INSERT INTO weather (city, temp_lo, temp_hi, prcp, date)
    VALUES ('San Francisco', 43, 57, 0.0, '1994-11-29');

如果愿意,你可以按不同顺序列出列,甚至省略某些列,例如降水量未知时:

INSERT INTO weather (date, city, temp_hi, temp_lo)
    VALUES ('1994-11-29', 'Hayward', 54, 37);

许多开发者认为,与依赖隐含顺序相比,显式列出列是一种更好的风格。

请把上面展示的所有命令都输入一遍,这样你在下面各节中才有一些数据可供操作。

也可以使用COPY从纯文本文件装载大量数据。这通常更快,因为COPY命令针对这种用途进行了优化,不过灵活性不如INSERT。例如:

COPY weather FROM '/home/user/weather.txt';

其中源文件的文件名必须是后端服务器机器(而不是客户端)能访问到的,因为文件是由后端服务器直接读取的。关于 COPY 命令的更多信息见参考手册。

提交更正

译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。