创建简单的编程语言,从数据库或文件返回匹配的行

时间:2010-12-18 23:29:17

标签: programming-languages antlr bison

由于我从未遇到过这种问题,所以我考虑过制作实现此问题的语言解析器。当然,我愿意接受这个问题的建议或完全不同的方法。我需要一般指导或建议如何实现这一目标。

TABLERULE col1 TYPE (STRING) == "string" 
(AND|OR|NOT) col2 TYPE (INT) >= 12 ...

STRINGRULE "stringregex" (AND|OR|NOT) "string2regex" ...

所以这个小语言应该有

  1. 用于识别应用于数据库表的规则的语法

  2. 识别应用于一串字符串(文本文件)的规则的语法

  3. 规则链接

  4. TABLERULE应该有col(string,integer)类型,因此它知道它可以使用哪种比较,==,!=表示字符串,>,<,==表示整数

  5. 编程语言输出应该是匹配的数据库行或字符串行的数组

  6. 语言解析器或类似方法需要与java,C,python

    兼容

1 个答案:

答案 0 :(得分:2)

SQL不能这样做吗?每个表都有一个保存在数据库中的模式,因此您可以在模式表中查找有关特定列的信息,并根据该信息选择实际的结果行。