当我通过 执行 SQL 命令时libpq
,如果出现类似这样的错误,它会报告错误消息。
Error Domain=PQConnection Code=1 "ERROR: syntax error at or near "fef"
LINE 1: fef
^
这是字符串消息。我可以解析消息 - 因为它非常有规律 - 以获取行号/列号,但这是不可靠的。是否有任何其他 API 来获取行/列号?任何正则化整数形式都会很好。
当我通过 执行 SQL 命令时libpq
,如果出现类似这样的错误,它会报告错误消息。
Error Domain=PQConnection Code=1 "ERROR: syntax error at or near "fef"
LINE 1: fef
^
这是字符串消息。我可以解析消息 - 因为它非常有规律 - 以获取行号/列号,但这是不可靠的。是否有任何其他 API 来获取行/列号?任何正则化整数形式都会很好。
使用PQresultErrorField
带有键的功能PG_DIAG_STATEMENT_POSITION
。
从手册
PG_DIAG_STATEMENT_POSITION 包含一个十进制整数的字符串,指示错误光标位置作为原始语句字符串的索引。第一个字符的索引为 1,位置以字符而不是字节为单位。