99 */
1010package net .sf .jsqlparser .schema ;
1111
12- import net .sf .jsqlparser .parser .ASTNodeAccessImpl ;
13-
1412import java .util .ArrayList ;
1513import java .util .Collection ;
1614import java .util .Collections ;
1715import java .util .List ;
1816import java .util .Optional ;
17+ import net .sf .jsqlparser .parser .ASTNodeAccessImpl ;
1918
2019/**
2120 * Represents the database type for a {@code SEQUENCE}
@@ -29,6 +28,7 @@ public class Sequence extends ASTNodeAccessImpl implements MultiPartName {
2928 private List <String > partItems = new ArrayList <>();
3029
3130 private List <Parameter > parameters ;
31+ private String dataType ;
3232
3333 public Sequence () {}
3434
@@ -45,6 +45,19 @@ public void setParameters(List<Parameter> parameters) {
4545 this .parameters = parameters ;
4646 }
4747
48+ public String getDataType () {
49+ return dataType ;
50+ }
51+
52+ public void setDataType (String dataType ) {
53+ this .dataType = dataType ;
54+ }
55+
56+ public Sequence withDataType (String dataType ) {
57+ this .setDataType (dataType );
58+ return this ;
59+ }
60+
4861 public Database getDatabase () {
4962 return new Database (getIndex (DATABASE_IDX ));
5063 }
@@ -129,6 +142,9 @@ public String getUnquotedName() {
129142 @ Override
130143 public String toString () {
131144 StringBuilder sql = new StringBuilder (getFullyQualifiedName ());
145+ if (dataType != null ) {
146+ sql .append (" AS " ).append (dataType );
147+ }
132148 if (parameters != null ) {
133149 for (Sequence .Parameter parameter : parameters ) {
134150 sql .append (" " ).append (parameter .formatParameter ());
0 commit comments