Skip to content

Commit

Permalink
JDBC-555 Refresh/recheck reserved words list based on SQL:2003
Browse files Browse the repository at this point in the history
  • Loading branch information
mrotteveel committed Apr 22, 2019
1 parent cc00c1d commit 6b0d6fd
Showing 1 changed file with 27 additions and 28 deletions.
55 changes: 27 additions & 28 deletions src/main/org/firebirdsql/jdbc/FirebirdVersionMetaData.java
Expand Up @@ -35,49 +35,43 @@ enum FirebirdVersionMetaData {
FIREBIRD_3_0(3, 0) {
@Override
public String getSqlKeywords() {
return "ADMIN,AVG,BIT_LENGTH,BOOLEAN,CHAR_LENGTH,CHARACTER_LENGTH,CHAR_LENGTH,CORR,COVAR_POP,COVAR_SAMP,"
+ "COUNT,CURRENT_CONNECTION,CURRENT_TRANSACTION,DELETING,EXTRACT,GDSCODE,INDEX,INSERTING,LONG,"
+ "LOWER,MAX,MIN,OCTET_LENGTH,OFFSET,PLAN,POSITION,POST_EVENT,RDB$DB_KEY,RDB$RECORD_VERSION,"
+ "RECORD_VERSION,RECREATE,REGR_AVGX,REGR_AVGY,REGR_COUNT,REGR_INTERCEPT,REGR_R2,REGR_SLOPE,"
+ "REGR_SXX,REGR_SXY,REGR_SYY,RETURNING_VALUES,ROW_COUNT,SQLCODE,STDDEV_POP,STDDEV_SAMP,SUM,TRIM,"
+ "UPDATING,UPPER,VAR_POP,VAR_SAMP,VARIABLE,VIEW";
return "ADD,ADMIN,BIT_LENGTH,CURRENT_CONNECTION,CURRENT_TRANSACTION,DELETING,GDSCODE,INDEX,INSERTING,LONG,"
+ "OFFSET,PLAN,POST_EVENT,RDB$DB_KEY,RDB$RECORD_VERSION,RECORD_VERSION,RECREATE,RETURNING_VALUES,"
+ "ROW_COUNT,SQLCODE,UPDATING,VARIABLE,VIEW,WHILE";
}
},
FIREBIRD_2_5(2, 5) {
@Override
public String getSqlKeywords() {
return "ADMIN,AVG,BIT_LENGTH,CHAR_LENGTH,CHARACTER_LENGTH,CHAR_LENGTH,COUNT,CURRENT_CONNECTION,"
+ "CURRENT_TRANSACTION,EXTRACT,GDSCODE,INDEX,LONG,LOWER,MAX,MAXIMUM_SEGMENT,MIN,OCTET_LENGTH,PLAN,"
+ "POSITION,POST_EVENT,RDB$DB_KEY,RECORD_VERSION,RECREATE,RETURNING_VALUES,ROW_COUNT,SQLCODE,SUM,"
+ "TRIM,UPPER,VARIABLE,VIEW";
return "ADD,ADMIN,BIT_LENGTH,CURRENT_CONNECTION,CURRENT_TRANSACTION,GDSCODE,INDEX,LONG,MAXIMUM_SEGMENT,"
+ "PLAN,POST_EVENT,RDB$DB_KEY,RECORD_VERSION,RECREATE,RETURNING_VALUES,ROW_COUNT,SQLCODE,VARIABLE,"
+ "VIEW,WHILE";
}
},
FIREBIRD_2_1(2, 1) {
@Override
public String getSqlKeywords() {
return "ACTIVE,ADMIN,AFTER,ASC,ASCENDING,AUTO,AVG,BEFORE,BIT_LENGTH,CHAR_LENGTH,CHARACTER_LENGTH,"
+ "CHAR_LENGTH,COMMITTED,COMPUTED,CONDITIONAL,CONTAINING,COUNT,CSTRING,CURRENT_CONNECTION,"
+ "CURRENT_TRANSACTION,DATABASE,DEBUG,DESC,DESCENDING,DOMAIN,ENTRY_POINT,EXCEPTION,EXTRACT,FILE,"
+ "GDSCODE,GENERATOR,GEN_ID,INACTIVE,INDEX,INPUT_TYPE,ISOLATION,KEY,LENGTH,LEVEL,LONG,LOWER,MANUAL,"
+ "MAX,MAXIMUM_SEGMENT,MIN,MODULE_NAME,NAMES,OCTET_LENGTH,OPTION,OUTPUT_TYPE,OVERFLOW,PAGE,PAGES,"
+ "PAGE_SIZE,PASSWORD,PLAN,POSITION,POST_EVENT,PRIVILEGES,PROTECTED,RDB$DB_KEY,READ,RECORD_VERSION,"
+ "RECREATE,RESERV,RESERVING,RETAIN,RETURNING_VALUES,ROW_COUNT,SCHEMA,SEGMENT,SHADOW,SHARED,"
+ "SINGULAR,SIZE,SNAPSHOT,SORT,SQLCODE,STABILITY,STARTING,STARTS,STATISTICS,SUB_TYPE,SUM,SUSPEND,"
+ "TRANSACTION,TRIM,UNCOMMITTED,UPPER,VARIABLE,VIEW,WAIT,WORK,WRITE";
return "ACTIVE,ADD,ADMIN,AFTER,ASC,ASCENDING,AUTO,BEFORE,BIT_LENGTH,COMMITTED,COMPUTED,CONDITIONAL,"
+ "CONTAINING,CSTRING,CURRENT_CONNECTION,CURRENT_TRANSACTION,DATABASE,DEBUG,DESC,DESCENDING,DO,"
+ "DOMAIN,ENTRY_POINT,EXCEPTION,EXIT,FILE,GDSCODE,GENERATOR,GEN_ID,IF,INACTIVE,INDEX,INPUT_TYPE,"
+ "ISOLATION,KEY,LENGTH,LEVEL,LONG,MANUAL,MAXIMUM_SEGMENT,MODULE_NAME,NAMES,OPTION,OUTPUT_TYPE,"
+ "OVERFLOW,PAGE,PAGES,PAGE_SIZE,PASSWORD,PLAN,POST_EVENT,PRIVILEGES,PROTECTED,RDB$DB_KEY,READ,"
+ "RECORD_VERSION,RECREATE,RESERV,RESERVING,RETAIN,RETURNING_VALUES,ROW_COUNT,SCHEMA,SEGMENT,"
+ "SHADOW,SHARED,SINGULAR,SIZE,SNAPSHOT,SORT,SQLCODE,STABILITY,STARTING,STARTS,STATISTICS,"
+ "SUB_TYPE,SUSPEND,TRANSACTION,UNCOMMITTED,VARIABLE,VIEW,WAIT,WHILE,WORK,WRITE";
}
},
FIREBIRD_2_0(2, 0) {
@Override
public String getSqlKeywords() {
return "ACTIVE,ADMIN,AFTER,ASC,ASCENDING,AUTO,AVG,BEFORE,BIT_LENGTH,CHAR_LENGTH,CHARACTER_LENGTH,"
+ "CHAR_LENGTH,COMMITTED,COMPUTED,CONDITIONAL,CONTAINING,COUNT,CSTRING,CURRENT_CONNECTION,"
+ "CURRENT_TRANSACTION,DATABASE,DEBUG,DESC,DESCENDING,DOMAIN,ENTRY_POINT,EXCEPTION,EXTRACT,FILE,"
+ "GDSCODE,GENERATOR,GEN_ID,INACTIVE,INDEX,INPUT_TYPE,ISOLATION,KEY,LENGTH,LEVEL,LONG,LOWER,MANUAL,"
+ "MAX,MAXIMUM_SEGMENT,MESSAGE,MIN,MODULE_NAME,NAMES,OCTET_LENGTH,OPTION,OUTPUT_TYPE,OVERFLOW,PAGE,"
+ "PAGES,PAGE_SIZE,PASSWORD,PLAN,POSITION,POST_EVENT,PRIVILEGES,PROTECTED,RDB$DB_KEY,READ,"
+ "RECORD_VERSION,RECREATE,RESERV,RESERVING,RETAIN,RETURNING_VALUES,ROW_COUNT,SCHEMA,SEGMENT,"
+ "SHADOW,SHARED,SINGULAR,SIZE,SNAPSHOT,SORT,SQLCODE,STABILITY,STARTING,STARTS,STATISTICS,SUB_TYPE,"
+ "SUM,SUSPEND,TRANSACTION,TRIM,UNCOMMITTED,UPPER,VARIABLE,VIEW,WAIT,WORK,WRITE";
return "ACTIVE,ADD,ADMIN,AFTER,ASC,ASCENDING,AUTO,BEFORE,BIT_LENGTH,COMMITTED,COMPUTED,CONDITIONAL,"
+ "CONTAINING,CSTRING,CURRENT_CONNECTION,CURRENT_TRANSACTION,DATABASE,DEBUG,DESC,DESCENDING,DO,"
+ "DOMAIN,ENTRY_POINT,EXCEPTION,EXIT,FILE,GDSCODE,GENERATOR,GEN_ID,IF,INACTIVE,INDEX,INPUT_TYPE,"
+ "ISOLATION,KEY,LENGTH,LEVEL,LONG,MANUAL,MAXIMUM_SEGMENT,MESSAGE,MODULE_NAME,NAMES,OPTION,"
+ "OUTPUT_TYPE,OVERFLOW,PAGE,PAGES,PAGE_SIZE,PASSWORD,PLAN,POST_EVENT,PRIVILEGES,PROTECTED,"
+ "RDB$DB_KEY,READ,RECORD_VERSION,RECREATE,RESERV,RESERVING,RETAIN,RETURNING_VALUES,ROW_COUNT,"
+ "SCHEMA,SEGMENT,SHADOW,SHARED,SINGULAR,SIZE,SNAPSHOT,SORT,SQLCODE,STABILITY,STARTING,STARTS,"
+ "STATISTICS,SUB_TYPE,SUSPEND,TRANSACTION,UNCOMMITTED,VARIABLE,VIEW,WAIT,WHILE,WORK,WRITE";
}
};

Expand All @@ -91,6 +85,11 @@ public String getSqlKeywords() {

/**
* Returns a comma-separated list of the reserved words that are not also reserved by SQL:2003.
* <p>
* NOTE: {@code DatabaseMetaData.getSQLKeywords()} talks about SQL keywords, but we are intentionally restricting
* this to reserved words, and ignore non-standard non-reserved keywords as we believe that is closer to the intent
* of {@code DatabaseMetaData.getSQLKeywords()}.
* </p>
*
* @return comma-separated list of the reserved words
* @see java.sql.DatabaseMetaData#getSQLKeywords()
Expand Down

0 comments on commit 6b0d6fd

Please sign in to comment.