@@ -1191,6 +1191,36 @@ void testCreateTableColumnVisibility() throws JSQLParserException {
11911191 createTable .getColumnDefinitions ().get (1 ).getColumnSpecs ());
11921192 }
11931193
1194+ @ Test
1195+ void testOracleInlineConstraintState () throws JSQLParserException {
1196+ String sqlStr =
1197+ "CREATE TABLE DIAM.IAM_DENEME1 ("
1198+ + "ID VARCHAR2(36 BYTE) NOT NULL ENABLE,"
1199+ + "REQUEST_ID VARCHAR2(50 BYTE),"
1200+ + "CREATE_DATE TIMESTAMP(9),"
1201+ + "USER_ID VARCHAR2(50 BYTE),"
1202+ + "CODE VARCHAR2(100 BYTE) NOT NULL ENABLE,"
1203+ + "IS_OUTSOURCE_ENABLED CHAR(1 BYTE) DEFAULT 1 NOT NULL ENABLE,"
1204+ + "IS_PASSWORD_NUMERIC CHAR(1 BYTE) DEFAULT 0 NOT NULL ENABLE"
1205+ + ")" ;
1206+
1207+ CreateTable createTable = (CreateTable ) CCJSqlParserUtil .parse (sqlStr );
1208+
1209+ assertSqlCanBeParsedAndDeparsed (
1210+ "CREATE TABLE test ("
1211+ + "a NUMBER NOT NULL ENABLE,"
1212+ + "b NUMBER NOT NULL DISABLE,"
1213+ + "c NUMBER NOT NULL ENABLE NOVALIDATE,"
1214+ + "d NUMBER CONSTRAINT d_nn NOT NULL DEFERRABLE VALIDATE"
1215+ + ")" ,
1216+ true );
1217+
1218+ assertEquals (Arrays .asList ("NOT" , "NULL" , "ENABLE" ),
1219+ createTable .getColumnDefinitions ().get (0 ).getColumnSpecs ());
1220+ assertEquals (Arrays .asList ("DEFAULT" , "1" , "NOT" , "NULL" , "ENABLE" ),
1221+ createTable .getColumnDefinitions ().get (5 ).getColumnSpecs ());
1222+ }
1223+
11941224 @ Test
11951225 void testCreateTableIndexVisibilityWithOtherIndexOptions () throws JSQLParserException {
11961226 assertSqlCanBeParsedAndDeparsed (
0 commit comments