Archery
Archery copied to clipboard
archery在执行mongodb工单时,如果SQL里面有分号,执行会报错
重现步骤
1、db.t1.insert({'name':'李四'}); 不带分号, 成功
2、db.t1.insert({'name':'李四;'}); 带分号,失败
预期外的结果
期望执行带分号的sql语句也能成功: db.t1.insert({'name':'李四;'});
日志文本
No response
版本
1.9.0
部署方式
Docker
是否还有其他可以辅助定位问题的信息?比如数据库版本等
No response
这个问题是已知问题,文档里也有提过,审核的正则表达式需要优化
明白了,这个有计划优化吗
暂时没有时间调整这块,你是要是有这个强需求,可以自己看代码修改一下
好的,谢谢。
我还有个问题,想请教一下,就是mongodb有什么方法实现备份sql吗,就像mysql那样,执行的每条sql,都有对应的回滚语句。 我知道mysql是通过goinception实现回滚sql的,而goinception是通过binlog row 来实现回滚sql的。 那么mongodb有什么办法也能实现回滚sql吗。
实现mongodb 回滚sql,是强需求,我们现在用mongodb数据库的项目也开始多起来了。
首先得对mongodb解决语句语法语义的解析,这块就得投入一定的时间去搞,这也是一个小难点,解决了这块才能做回滚
了解, oracle是通过日志挖掘实现的回滚sql的; mysql是通过binlog row实现回滚sql的; 目前mongodb只有一个statement 格式的 oplog,无法用于生成回滚语句。
mongodb 确实是个难点。