java - 在数据库中存储表达式树

标签 java database database-design

我需要在数据库中存储逻辑条件。例如:(condition1 || condition2) && condition3 应该存储在数据库中。

我打算设计一个表[ExpressionTree]来处理结构:

Id
condition
combinationId
nextId(FK->[Condition2Combination.Id])
operator (AND, OR, null)

如果表[ExpressionTree]中的(condition1 || condition2) && condition3,记录应该是:

Id  conditionId combinationId nextId  operator
1  condition1   combination1  2       OR
2  condition2   combination1  3       AND
3  condition3   combination1  null    null

但解决方案不好,您有什么建议?谢谢!

最佳答案

除非您实际上要对表达式树执行数据库查询,否则我倾向于将表达式存储为文本列……并根据需要在客户端解析它们。

关于java - 在数据库中存储表达式树,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5026322/

相关文章:

java - 映射字符串数组

java - JMeter 是否完全支持 NTLM 身份验证?

mysql - 电话资费网站的 ERD - 这是最佳选择吗?

sql - 当相关数据需要存储在连接表中时,约定是什么?

java - Orika - 将 Page<T> 映射到 Page<TDto>

database - 扇形陷阱和裂隙陷阱 - 数据库

sql - 什么相当于 MySQL 中 MS Access 中的 Nz 函数? Nz 是 SQL 标准吗?

PHP/MySQL 程序概要

mysql - 在数据库中设置选定行的最佳实践

java - 在excel文件中导出Jtable