2929import net .sf .jsqlparser .statement .select .PlainSelect ;
3030
3131/**
32- * A class to de-parse (that is, tranform from JSqlParser hierarchy into a
33- * string) a {@link net.sf.jsqlparser.statement.create.table.CreateTable}
32+ * A class to de-parse (that is, tranform from JSqlParser hierarchy into a string) a
33+ * {@link net.sf.jsqlparser.statement.create.table.CreateTable}
3434 */
3535public class CreateTableDeParser {
3636
@@ -48,7 +48,8 @@ public void deParse(CreateTable createTable) {
4848 if (createTable .isUnlogged ()) {
4949 buffer .append ("UNLOGGED " );
5050 }
51- String params = PlainSelect .getStringList (createTable .getCreateOptionsStrings (), false , false );
51+ String params = PlainSelect .
52+ getStringList (createTable .getCreateOptionsStrings (), false , false );
5253 if (!"" .equals (params )) {
5354 buffer .append (params ).append (' ' );
5455 }
@@ -59,11 +60,19 @@ public void deParse(CreateTable createTable) {
5960 }
6061 buffer .append (createTable .getTable ().getFullyQualifiedName ());
6162 if (createTable .getSelect () != null ) {
62- buffer .append (" AS " ).append (createTable .getSelect ().toString ());
63+ buffer .append (" AS " );
64+ if (createTable .isSelectParenthesis ()) {
65+ buffer .append ("(" );
66+ }
67+ buffer .append (createTable .getSelect ().toString ());
68+ if (createTable .isSelectParenthesis ()) {
69+ buffer .append (")" );
70+ }
6371 } else {
6472 if (createTable .getColumnDefinitions () != null ) {
6573 buffer .append (" (" );
66- for (Iterator <ColumnDefinition > iter = createTable .getColumnDefinitions ().iterator (); iter .hasNext ();) {
74+ for (Iterator <ColumnDefinition > iter = createTable .getColumnDefinitions ().iterator (); iter .
75+ hasNext ();) {
6776 ColumnDefinition columnDefinition = iter .next ();
6877 buffer .append (columnDefinition .getColumnName ());
6978 buffer .append (" " );
0 commit comments