JSQLPARSER를 처음 사용하고 있습니다. 나는 동적으로 오는 일부 SQL 파일을 가지고 있는데, 나는 그 SQL로부터 테이블과 컬럼 이름을 읽을 필요가있다. 인터넷 검색을 많이 한 후 JSQLPARSER를 사용해 보았습니다. 파일에서 열 이름을 읽으려고하는데 표현식으로 인해 열 이름을 읽을 수 없으므로 어느 곳에서 잘못 되었든 제 코드를 수정할 수 있습니까?JSQLPARSE를 사용하여 SQl에서 테이블 및 열 이름을 검색하는 방법
이public static void main(String[] args) throws JSQLParserException
{
// TODO Auto-generated method stub
String statement="SELECT LOCATION_D.REGION_NAME, LOCATION_D.AREA_NAME, COUNT(DISTINCT INCIDENT_FACT.TICKET_ID) FROM LOCATION_D, INCIDENT_FACT WHERE (LOCATION_D.LOCATION_SK=INCIDENT_FACT.LOCATION_SK) GROUP BY LOCATION_D.REGION_NAME, LOCATION_D.AREA_NAME";
CCJSqlParserManager parserManager = new CCJSqlParserManager();
Select select=(Select) parserManager.parse(new StringReader(statement));
PlainSelect plain=(PlainSelect)select.getSelectBody();
List selectitems=plain.getSelectItems();
System.out.println(selectitems.size());
for(int i=0;i<selectitems.size();i++)
{
Expression expression=((SelectExpressionItem) selectitems.get(i)).getExpression();
System.out.println("Expression:-"+expression);
Column col=(Column)expression;
System.out.println(col.getTable()+","+col.getColumnName());
}
}