将简单的存在性和布尔真值语句编译为有效的SQL(即用于检查约束)。
EBCompiler的Python项目详细描述
存在性布尔编译程序
将简单的存在语句和布尔真理编译成有效的SQL(即检查约束)。
示例
输入:
(!is_dled && file_size!?) || (is_dled && file_size?)
输出:
(is_dled IS FALSE AND file_size IS NULL) OR (is_dled IS TRUE AND file_size IS NOT NULL)
语法
名称(即变量或列名)可以应用多种一元运算符。名称只能以字母开头,但也可以包含字母、数字和下划线。
- 不解释任何运算符为真
- 引用!
变为为false - ?变为不为空
- 引用!?
变为为空
除此之外,您还可以使用逻辑二进制运算符(&;amp;,)和括号((,))。
如果输入不遵循这些规则,则无法保证生成有效的sql。
为什么?
因为我想写一个简单的词汇表。此外,它还允许更容易地编写sql检查约束。
q:等等,这真的不是索菲斯蒂克的意思,是吗? a:没有。很琐碎。