|
|
1
3
回答我自己的问题: AM使用JSQLParser http://jsqlparser.sourceforge.net/ 这将解析单个语句,而不是模式中的多个语句。所以在“;”上拆分架构。它也不喜欢“`”字符,所以需要去掉这些字符。获取特定表的列名的代码:
|
|
|
2
1
为什么不使用databasemetadata来查找表和列呢?这假定以SQL表示的模式是针对您所连接的数据库运行的,但这不是一个很难满足的假设。 如果您有csv格式的数据,MySQL可能只需导入数据。在编写Java代码之前,我会深入研究MySQL工具。如果这不起作用,我会找到一个ETL工具来帮助我。编写Java将是我最后的解决方案。 |
|
|
3
1
你可以考虑使用阿里巴巴的代码 Druid project . 虽然设计为复杂的连接池库,但此项目支持非常高级的 parser and AST 对于ansi-sql和非ansi语言,如mysql、oracle、sql-server等,该项目是开放源代码的,具有非常宽松的Apache许可证版本2.0。
进入图书馆这一部分的主要入口是
SQLUtils.java
. 可以使用从返回的值
|
|
|
David542 · 任何语言都允许函数名中有空格吗? 1 年前 |
|
Andy · 将LENGTH OF移动到COMP字段解析失败 1 年前 |
|
|
Chris Geo · 如何找到LR0项目的FOLLOW集合? 1 年前 |
|
|
Yash Singhal · 在reactjs中解析Pdf中的文本 2 年前 |
|
|
i33SoDA · 如何将逗号分隔的数字字符串解析为int数组? 2 年前 |