所以,如果我有许多记录要插入到外部表中,我可以这样做(伪代码):
DO
INSERT INTO my_fdw_table VALUES next_row;
LOOP
或这个:
INSERT INTO my_fdw_table SELECT all_the_rows;
根据我的直觉,第二种似乎更有效,因为所有数据都是一次性发送的,重复的 SQL 关键字更少。
但是,我不知道第二个是否真的会导致同样多的往返行程。我也不知道如果有很多行,第二个是否会冒着达到某种语句长度限制的风险?
我正在使用 postgres 9.3