cassandra.protocol.SyntaxException: message="line 0:-1 在输入 '<EOF>'"> 没有可行的替代方案

问题描述

我正在尝试执行此语句,但我不知道问题出在哪里

prepared = session.prepare("SELECT * FROM recipe WHERE meal = Breakfast")

我收到此错误

cassandra.protocol.SyntaxException: <Error from server: code=2000 [Syntax error in CQL query] message="line 0:-1 no viable alternative at input '<EOF>'">

任何帮助将不胜感激

解决方法

您只是有不正确的 CQL - 将早餐放在单引号中。有关必须如何表示不同数据类型,请参阅 documentation

附言此外,最好使用占位符而不是特定值 (where meal = ?) 准备查询,并在执行查询时将该值作为参数传递 - 然后引用等将自动完成。有关示例,请参阅 Python 驱动程序文档