File tree Expand file tree Collapse file tree 2 files changed +12
-2
lines changed
src/main/java/net/sf/jsqlparser/util/deparser Expand file tree Collapse file tree 2 files changed +12
-2
lines changed Original file line number Diff line number Diff line change 27
27
import net .sf .jsqlparser .statement .create .table .CreateTable ;
28
28
import net .sf .jsqlparser .statement .create .table .Index ;
29
29
import net .sf .jsqlparser .statement .select .PlainSelect ;
30
+ import net .sf .jsqlparser .statement .select .Select ;
31
+
30
32
31
33
/**
32
34
* A class to de-parse (that is, tranform from JSqlParser hierarchy into a string) a
35
37
public class CreateTableDeParser {
36
38
37
39
private StringBuilder buffer ;
40
+ private StatementDeParser statementDeParser ;
38
41
39
42
/**
40
43
* @param buffer the buffer that will be filled with the select
@@ -43,6 +46,12 @@ public CreateTableDeParser(StringBuilder buffer) {
43
46
this .buffer = buffer ;
44
47
}
45
48
49
+ public CreateTableDeParser (StatementDeParser statementDeParser , StringBuilder buffer ) {
50
+ this .buffer = buffer ;
51
+ this .statementDeParser = statementDeParser ;
52
+ }
53
+
54
+
46
55
public void deParse (CreateTable createTable ) {
47
56
buffer .append ("CREATE " );
48
57
if (createTable .isUnlogged ()) {
@@ -64,7 +73,8 @@ public void deParse(CreateTable createTable) {
64
73
if (createTable .isSelectParenthesis ()) {
65
74
buffer .append ("(" );
66
75
}
67
- buffer .append (createTable .getSelect ().toString ());
76
+ Select sel = createTable .getSelect ();
77
+ sel .accept (this .statementDeParser );
68
78
if (createTable .isSelectParenthesis ()) {
69
79
buffer .append (")" );
70
80
}
Original file line number Diff line number Diff line change @@ -70,7 +70,7 @@ public void visit(CreateIndex createIndex) {
70
70
71
71
@ Override
72
72
public void visit (CreateTable createTable ) {
73
- CreateTableDeParser createTableDeParser = new CreateTableDeParser (buffer );
73
+ CreateTableDeParser createTableDeParser = new CreateTableDeParser (this , buffer );
74
74
createTableDeParser .deParse (createTable );
75
75
}
76
76
You can’t perform that action at this time.
0 commit comments