Postgres 节点#
使用 Postgres 节点在 Postgres 中自动化工作,并将 Postgres 与其他应用程序集成。n8n 内置支持广泛的 Postgres 功能,包括执行查询,以及在数据库中插入和更新行。
在此页面上,您将找到 Postgres 节点支持的操作列表和更多资源的链接。
凭据
请参考 Postgres 凭据 获取设置身份验证的指导。
此节点可用作 AI 工具
此节点可用于增强 AI 代理的功能。以这种方式使用时,许多参数可以自动设置,或使用 AI 指导的信息设置 - 在 AI 工具参数文档中了解更多信息。
Operations 操作#
- Delete 删除:删除整个表或表中的行
- Execute Query 执行查询:执行 SQL 查询
- Insert 插入:在表中插入行
- Insert or Update 插入或更新:在表中插入或更新行
- Select 选择:从表中选择行
- Update 更新:更新表中的行
Delete 删除#
使用此操作删除整个表或表中的行。
输入这些参数:
- Credential to connect with 连接凭据:创建或选择现有的 Postgres 凭据。
- Operation 操作:选择 Delete 删除。
- Schema 模式:选择包含您要操作的表的模式。选择 From list 从列表中从下拉列表中选择模式,或 By Name 按名称输入模式名称。
- Table 表:选择您要操作的表。选择 From list 从列表中从下拉列表中选择表,或 By Name 按名称输入表名。
- Command 命令:要执行的删除操作:
- Truncate 截断:删除表的数据但保留表的结构。
- Restart Sequences 重新启动序列:是否在截断过程中将自动递增列重置为其初始值。
- Delete 删除:删除与"选择行"条件匹配的行。如果您不选择任何内容,Postgres 会删除所有行。
- Select Rows 选择行:定义要匹配行的列、运算符和值。
- Combine Conditions 组合条件:如何组合"选择行"中的条件。AND 要求所有条件都为真,而 OR 至少要求一个条件为真。
- Drop 丢弃:永久删除表的数据和结构。
- Truncate 截断:删除表的数据但保留表的结构。
删除选项#
- Cascade 级联:是否也删除依赖于该表的所有对象,如视图和序列。使用 Truncate 截断或 Drop 丢弃命令时可用。
- Connection Timeout 连接超时:尝试连接到数据库的秒数。
- Delay Closing Idle Connection 延迟关闭空闲连接:在考虑空闲连接有资格关闭之前等待的秒数。
- Query Batching 查询批处理:向数据库发送查询的方式:
- Single Query 单个查询:为所有传入项目执行单个查询。
- Independently 独立:为执行的每个传入项目执行一个查询。
- Transaction 事务:在事务中执行所有查询。如果发生故障,Postgres 会回滚所有更改。
- Output Large-Format Numbers As 输出大格式数字为:输出
NUMERIC
和BIGINT
列的格式:- Numbers 数字:用于标准数字。
- Text 文本:如果您期望数字长于 16 位,请使用此选项。否则,数字可能不正确。
Execute Query 执行查询#
使用此操作执行 SQL 查询。
输入这些参数:
- Credential to connect with 连接凭据:创建或选择现有的 Postgres 凭据。
- Operation 操作:选择 Execute Query 执行查询。
- Query 查询:要执行的 SQL 查询。您可以使用 n8n 表达式 和像
$1
、$2
和$3
这样的标记来构建与查询参数一起使用的预处理语句。
执行查询选项#
- Connection Timeout 连接超时:尝试连接到数据库的秒数。
- Delay Closing Idle Connection 延迟关闭空闲连接:在考虑空闲连接有资格关闭之前等待的秒数。
- Query Batching 查询批处理:向数据库发送查询的方式:
- Single Query 单个查询:为所有传入项目执行单个查询。
- Independently 独立:为执行的每个传入项目执行一个查询。
- Transaction 事务:在事务中执行所有查询。如果发生故障,Postgres 会回滚所有更改。
- Query Parameters 查询参数:要用作查询参数的值的逗号分隔列表。
- Output Large-Format Numbers As 输出大格式数字为:输出
NUMERIC
和BIGINT
列的格式:- Numbers 数字:用于标准数字。
- Text 文本:如果您期望数字长于 16 位,请使用此选项。否则,数字可能不正确。
- Replace Empty Strings with NULL 用 NULL 替换空字符串:是否在输入中用 NULL 替换空字符串。这在处理从电子表格软件导出的数据时可能很有用。
Insert 插入#
使用此操作在表中插入行。
输入这些参数:
- Credential to connect with 连接凭据:创建或选择现有的 Postgres 凭据。
- Operation 操作:选择 Insert 插入。
- Schema 模式:选择包含您要操作的表的模式。选择 From list 从列表中从下拉列表中选择模式,或 By Name 按名称输入模式名称。
- Table 表:选择您要操作的表。选择 From list 从列表中从下拉列表中选择表,或 By Name 按名称输入表名。
- Mapping Column Mode 映射列模式:如何将列名映射到传入数据:
- Map Each Column Manually 手动映射每列:选择每列要使用的值。
- Map Automatically 自动映射:自动将传入数据映射到 Postgres 中匹配的列名。传入的数据字段名必须与 Postgres 中的列名匹配才能正常工作。如有必要,请考虑在此节点之前使用编辑字段(设置)节点来根据需要调整格式。
插入选项#
- Connection Timeout 连接超时:尝试连接到数据库的秒数。
- Delay Closing Idle Connection 延迟关闭空闲连接:在考虑空闲连接有资格关闭之前等待的秒数。
- Query Batching 查询批处理:向数据库发送查询的方式:
- Single Query 单个查询:为所有传入项目执行单个查询。
- Independently 独立:为执行的每个传入项目执行一个查询。
- Transaction 事务:在事务中执行所有查询。如果发生故障,Postgres 会回滚所有更改。
- Output Columns 输出列:选择要输出的列。您可以从可用列的列表中选择或使用表达式指定 ID。
- Output Large-Format Numbers As 输出大格式数字为:输出
NUMERIC
和BIGINT
列的格式:- Numbers 数字:用于标准数字。
- Text 文本:如果您期望数字长于 16 位,请使用此选项。否则,数字可能不正确。
- Skip on Conflict 跳过冲突:是否在插入违反唯一或排除约束时跳过行,而不是抛出错误。
- Replace Empty Strings with NULL 用 NULL 替换空字符串:是否在输入中用 NULL 替换空字符串。这在处理从电子表格软件导出的数据时可能很有用。
Insert or Update 插入或更新#
使用此操作在表中插入或更新行。
输入这些参数:
- Credential to connect with 连接凭据:创建或选择现有的 Postgres 凭据。
- Operation 操作:选择 Insert or Update 插入或更新。
- Schema 模式:选择包含您要操作的表的模式。选择 From list 从列表中从下拉列表中选择模式,或 By Name 按名称输入模式名称。
- Table 表:选择您要操作的表。选择 From list 从列表中从下拉列表中选择表,或 By Name 按名称输入表名。
- Mapping Column Mode 映射列模式:如何将列名映射到传入数据:
- Map Each Column Manually 手动映射每列:选择每列要使用的值。
- Map Automatically 自动映射:自动将传入数据映射到 Postgres 中匹配的列名。传入的数据字段名必须与 Postgres 中的列名匹配才能正常工作。如有必要,请考虑在此节点之前使用编辑字段(设置)节点来根据需要调整格式。
插入或更新选项#
- Connection Timeout 连接超时:尝试连接到数据库的秒数。
- Delay Closing Idle Connection 延迟关闭空闲连接:在考虑空闲连接有资格关闭之前等待的秒数。
- Query Batching 查询批处理:向数据库发送查询的方式:
- Single Query 单个查询:为所有传入项目执行单个查询。
- Independently 独立:为执行的每个传入项目执行一个查询。
- Transaction 事务:在事务中执行所有查询。如果发生故障,Postgres 会回滚所有更改。
- Output Columns 输出列:选择要输出的列。您可以从可用列的列表中选择或使用表达式指定 ID。
- Output Large-Format Numbers As 输出大格式数字为:输出
NUMERIC
和BIGINT
列的格式:- Numbers 数字:用于标准数字。
- Text 文本:如果您期望数字长于 16 位,请使用此选项。否则,数字可能不正确。
- Replace Empty Strings with NULL 用 NULL 替换空字符串:是否在输入中用 NULL 替换空字符串。这在处理从电子表格软件导出的数据时可能很有用。
Select 选择#
使用此操作从表中选择行。
输入这些参数:
- Credential to connect with 连接凭据:创建或选择现有的 Postgres 凭据。
- Operation 操作:选择 Select 选择。
- Schema 模式:选择包含您要操作的表的模式。选择 From list 从列表中从下拉列表中选择模式,或 By Name 按名称输入模式名称。
- Table 表:选择您要操作的表。选择 From list 从列表中从下拉列表中选择表,或 By Name 按名称输入表名。
- Return All 返回所有:是否返回所有结果或仅返回给定限制。
- Limit 限制:当 Return All 返回所有被禁用时返回的项目最大数量。
- Select Rows 选择行:设置选择行的条件。定义要匹配行的列、运算符和值。如果您不选择任何内容,Postgres 会返回所有行。
- Combine Conditions 组合条件:如何组合选择行中的条件。AND 要求所有条件都为真,而 OR 至少要求一个条件为真。
- Sort 排序:选择如何对选定的行进行排序。从列表中选择列或按 ID 排序方向。
选择选项#
- Connection Timeout 连接超时:尝试连接到数据库的秒数。
- Delay Closing Idle Connection 延迟关闭空闲连接:在考虑空闲连接有资格关闭之前等待的秒数。
- Query Batching 查询批处理:向数据库发送查询的方式:
- Single Query 单个查询:为所有传入项目执行单个查询。
- Independently 独立:为执行的每个传入项目执行一个查询。
- Transaction 事务:在事务中执行所有查询。如果发生故障,Postgres 会回滚所有更改。
- Output Columns 输出列:选择要输出的列。您可以从可用列的列表中选择或使用表达式指定 ID。
- Output Large-Format Numbers As 输出大格式数字为:输出
NUMERIC
和BIGINT
列的格式:- Numbers 数字:用于标准数字。
- Text 文本:如果您期望数字长于 16 位,请使用此选项。否则,数字可能不正确。
Update 更新#
使用此操作更新表中的行。
输入这些参数:
- Credential to connect with 连接凭据:创建或选择现有的 Postgres 凭据。
- Operation 操作:选择 Update 更新。
- Schema 模式:选择包含您要操作的表的模式。选择 From list 从列表中从下拉列表中选择模式,或 By Name 按名称输入模式名称。
- Table 表:选择您要操作的表。选择 From list 从列表中从下拉列表中选择表,或 By Name 按名称输入表名。
- Mapping Column Mode 映射列模式:如何将列名映射到传入数据:
- Map Each Column Manually 手动映射每列:选择每列要使用的值。
- Map Automatically 自动映射:自动将传入数据映射到 Postgres 中匹配的列名。传入的数据字段名必须与 Postgres 中的列名匹配才能正常工作。如有必要,请考虑在此节点之前使用编辑字段(设置)节点来根据需要调整格式。
更新选项#
- Connection Timeout 连接超时:尝试连接到数据库的秒数。
- Delay Closing Idle Connection 延迟关闭空闲连接:在考虑空闲连接有资格关闭之前等待的秒数。
- Query Batching 查询批处理:向数据库发送查询的方式:
- Single Query 单个查询:为所有传入项目执行单个查询。
- Independently 独立:为执行的每个传入项目执行一个查询。
- Transaction 事务:在事务中执行所有查询。如果发生故障,Postgres 会回滚所有更改。
- Output Columns 输出列:选择要输出的列。您可以从可用列的列表中选择或使用表达式指定 ID。
- Output Large-Format Numbers As 输出大格式数字为:输出
NUMERIC
和BIGINT
列的格式:- Numbers 数字:用于标准数字。
- Text 文本:如果您期望数字长于 16 位,请使用此选项。否则,数字可能不正确。
- Replace Empty Strings with NULL 用 NULL 替换空字符串:是否在输入中用 NULL 替换空字符串。这在处理从电子表格软件导出的数据时可能很有用。
Templates and examples#
Related resources#
n8n 提供了用于 Postgres 的触发节点。您可以在此找到触发节点文档 这里。
Use query parameters#
当创建要运行在 Postgres 数据库上的查询时,您可以在选项部分中使用查询参数字段将数据加载到查询中。n8n 对查询参数中的数据进行消毒,以防止 SQL 注入。
例如,您想根据电子邮件地址查找人员。给定以下输入数据:
1 2 3 4 5 6 7 8 9 10 11 12 |
|
您可以编写如下查询:
1 |
|
然后在查询参数中提供要使用的字段值。您可以提供固定值或表达式。对于此示例,使用表达式,以便节点可以从每个输入项目中依次拉取电子邮件地址:
1 2 |
|
Common issues#
对于常见问题或问题及其建议解决方案,请参考 Common issues。