gpt4 book ai didi

postgresql - 将日志文件中的行号与函数代码匹配

转载 作者:行者123 更新时间:2023-11-29 11:35:33 26 4
gpt4 key购买 nike

我在尝试调试触发器函数时遇到错误。在 Postgres 日志中,我有以下内容:

2012-08-16 21:41:23 PDT ERROR:  Unknown period: D
2012-08-16 21:41:23 PDT CONTEXT: PL/pgSQL function "handle_promotion_update"
line 60 at assignment
SQL statement "UPDATE promotion SET some_column = foo + 1
WHERE id = NEW.promotion_id"
PL/pgSQL function "handle_new_reward" line 94 at SQL statement

所以,看来我的问题可能从“第 60 行”开始

我的问题是,行号从哪里开始?如果我进入 pgAdmin 并查看函数声明,它在顶部有“helper”(如删除函数)。所以,我不认为它来自那里。但是,它包含函数声明吗?还是仅来自 BEGIN 行?

最佳答案

您在 PostgreSQL 服务器日志中看到的行号从函数体的左引号 开始。您必须在此之前添加行才能在 pgAdmin SQL 编辑器中获得绝对行号。

不要混淆:如果您在尝试创建函数时遇到错误,您会得到不同的行号:它们指的是整个执行的脚本,而运行时错误中的行号指的是函数体。

关于postgresql - 将日志文件中的行号与函数代码匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12000080/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com