2025年9月25日: PostgreSQL 18 釋出!
支援的版本: 當前 (18) / 17 / 16 / 15 / 14 / 13
開發版本: devel
不受支援的版本: 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

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';

其中原始檔的檔名必須可在執行後端程序的機器上找到,而不是客戶端,因為後端程序直接讀取檔案。上面插入到 weather 表中的資料也可以從包含(值由製表符分隔)的檔案中插入

San Francisco    46    50    0.25    1994-11-27
San Francisco    43    57    0.0    1994-11-29
Hayward    37    54    \N    1994-11-29

您可以在 COPY 中閱讀更多關於 COPY 命令的資訊。

提交更正

如果您在文件中看到任何不正確、與您對特定功能的經驗不符或需要進一步澄清的內容,請使用 此表單 報告文件問題。