使用Cassandra triggers ,是否可以获取被触发的查询字符串
?
ITrigger
的 augment
方法具有 key 和 ColumnFamily 输入。该接口(interface)无助于捕获查询字符串。如何以编程方式获取查询字符串,例如 insert into blah blah
?
最佳答案
Using Cassandra triggers, is it possible to get the query string that was fired?
事实并非如此,因为突变无法访问查询字符串。
如果您想查看正在执行的查询,您可以修改 o.a.c.cql3.QueryProcessor
您可以在其中访问查询字符串。对于任意字符串执行,您需要 process(...)
但对于准备好的语句来说,情况要复杂一些。您可以在 storePreparedStatement(...)
中准备(创建和存储)准备好的语句的查询字符串时访问该查询字符串。功能。要查看绑定(bind)到语句的值,您必须检查 processStatement(...)
的变量是 ByteBuffer 的集合。
看看CASSANDRA-6572了解更多详情。
关于cassandra查询字符串访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24745666/