多行命令一起执行出错,单独执行正常

attachments-2021-05-E7fmBD8S60a64989edb94.png

如图所示,三行命令如果选中一起执行就出错,每行命令单独选中执行就正确.

请先 登录 后评论

1 个回答

Juntao Wang

一般的脚本语言都是逐条解释执行的。但这容易导致一个问题,运行时出现语法错误。所以DolphinDB database运行时,会对一段脚本先进行整体解析,如果有语法问题,譬如变量未定义,函数不存在,函数参数个数不正确等问题,直接报syntax error。如果没有问题,开始逐条执行。DolphinDB不一样,是先解析所有脚本,列出所有变量。然后再开始运行。

问题中的第一个语句undef all,是一个函数调用,它是在运行时执行,而不是在解析时执行。所以在运行的时候,把定义的变量全部删除了,导致运行后面的语句时出现异常。可以用go语句把程序分成多个代码块,让系统会分段解析并执行代码块。

undef all 
go;
login(`admin,`123456)
dbDate=...
请先 登录 后评论