0

编码新手,在 Colab 笔记本中尝试这段代码并收到此错误。由于某种原因,多行字符串似乎是一个问题,我无法弄清楚。请帮忙

print(conn.gsql('''
CREATE QUERY accountActivity() FOR GRAPH AMLSim {
SumAccum<DOUBLE> @s_sumAmt, @r_sumAmt;
SumAccum<DOUBLE> @s_txCnt, @r_txCnt;
MinAccum<DOUBLE> @s_minAmt, @r_minAmt;
MaxAccum<DOUBLE> @s_maxAmt, @r_maxAmt;
AvgAccum @s_avgAmt, @r_avgAmt;
Seed = {Account.*};
acctSend = SELECT tgt FROM Seed:s -(Send_Transaction:e)-> Transaction:tgt
ACCUM s.@s_sumAmt += tgt.amount, s.@s_txCnt += 1, s.@s_minAmt += tgt.amount, s.@s_maxAmt += tgt.amount, s.@s_avgAmt += tgt.amount
POST-ACCUM s.current_balance = s.@s_sumAmt - s.init_balance, s.min_send_tx = s.@s_minAmt, s.max_send_tx = s.@s_maxAmt, s.avg_send_tx = s.@s_avgAmt, s.cnt_send_tx = s.@s_txCnt;
acctRecieve = SELECT tgt FROM Seed:s -(reverse_Recieve_Transaction:e)-> Transaction:tgt
ACCUM s.@r_sumAmt += tgt.amount, s.@r_txCnt += 1, s.@r_minAmt += tgt.amount, s.@r_maxAmt += tgt.amount, s.@r_avgAmt += tgt.amount
POST-ACCUM s.current_balance = s.@r_sumAmt + s.init_balance, s.min_recieve_tx = s.@r_minAmt, s.max_recieve_tx = s.@r_maxAmt, s.avg_recieve_tx = s.@r_avgAmt, s.cnt_recieve_tx = s.@r_txCnt;
PRINT "Features Have Been Calculated";
}
INSTALL QUERY accountActivity
''', options=[]))

错误信息 -

ERROR:root:An unexpected error occurred while tokenizing input
The following traceback may be corrupted or invalid
The error message is: ('EOF in multi-line string', (1, 0))

---------------------------------------------------------------------------
ExceptionCodeRet                          Traceback (most recent call last)
<ipython-input-46-ba8252ad858f> in <module>()
     16 }
     17 INSTALL QUERY accountActivity
---> 18 ''', options=[]))
4

1 回答 1

1

嘿 user16772647 您的错误代码显示 ExceptionCodeRet 但您没有共享该值,如果您尝试复制它,那会给您一个数字(例如:212、213 ...)。

此处列出了错误代码:https ://docs.tigergraph.com/faqs/error-codes

我认为错误可能是其中之一:

  • 没有使用图表:解决方案将此附加到 conn.gsql 的顶部USE GRAPH AMLSim
  • 图表不存在:解决方案在图表工作室中仔细检查
  • 查询已创建或已安装:通过打印模式进行检查print(conn.gsql('ls'))

让我知道这是否有帮助:)

于 2021-08-30T09:45:24.203 回答