Updated SQL_Parser_Demo_visitor (markdown)

高铁
2017-09-29 07:18:09 -05:00
parent f95575b75f
commit c6d1eb6a7b
+6 -6
@@ -1,5 +1,5 @@
# 实现自己的Visitor
## Oracle版本
# 1. 实现自己的Visitor
## 1.1 Oracle版本
```java
public static class ExportTableAliasVisitor extends OracleASTVisitorAdapter {
private Map<String, SQLTableSource> aliasMap = new HashMap<String, SQLTableSource>();
@@ -15,7 +15,7 @@ public static class ExportTableAliasVisitor extends OracleASTVisitorAdapter {
}
```
## MySql版本
## 1.2 MySql版本
```java
public static class ExportTableAliasVisitor extends MySqlASTVisitorAdapter {
private Map<String, SQLTableSource> aliasMap = new HashMap<String, SQLTableSource>();
@@ -32,7 +32,7 @@ public static class ExportTableAliasVisitor extends MySqlASTVisitorAdapter {
```
## POSTGRESQL版本
## 1.3 POSTGRESQL版本
```java
public static class ExportTableAliasVisitor extends PGASTVisitorAdapter {
private Map<String, SQLTableSource> aliasMap = new HashMap<String, SQLTableSource>();
@@ -48,9 +48,9 @@ public static class ExportTableAliasVisitor extends PGASTVisitorAdapter {
}
```
# 使用Visitor
# 2. 使用Visitor
```java
finnal String dbType = JdbcConstants.ORACLE; // MYSQL或者POSTGRESQL
finnal String dbType = JdbcConstants.ORACLE; // JdbcConstants.MYSQL或者JdbcConstants.POSTGRESQL
String sql = "select * from mytable a where a.id = 3";
List<SQLStatement> stmtList = SQLUtils.parseStatements(sql, dbType);