我想知道,如何解析SQLIte查询并对其进行标记化,以便将来在执行查询后获得受影响的条目,从而能够在单个SQLite数据库上设置策略?

到目前为止,我已经创建了一个接受模块的项目。并且只有一个SQLite数据库。我的目标是创建一个控制器,该控制器将接收每个模块的查询,并从本质上检查是否允许该模块更改数据库中的特定内容。

关于如何实现此目标的任何想法?是否有为此提供任何库?我已经搜索了很多,但是在6个月内没有找到任何解决方案。

最佳答案

解析SQLite查询的最简单方法是让SQLite本身运行它们。

如果使用EXPLAIN继续执行SQL语句,您将获得一个包含虚拟机指令的结果集(实际上并未执行查询)。如果查看具有opcode = 'TableLock'的行,则p4列将为您提供受影响的表的名称。

关于c# - SQLite代码分析C#,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39880650/

10-09 20:20
查看更多