📄 embeddatabasemetadata.java
字号:
/** * Get a comma separated list of system functions. FIXME: find a way to reference system functions on Database when/if they are registered as aliases or include the Database object too. * @return the list */ public String getSystemFunctions() { return "CURRENT_USER,getCurrentConnection,runTimeStatistics,SESSION_USER,USER,CURRENT SCHEMA"; } /** * Get a comma separated list of time and date functions. not sure if this includes these built-ins or not, but here they are. FIXME: find a way to reference method aliases known to be "date/time" * @return the list */ public String getTimeDateFunctions() { return "CURDATE,CURTIME,CURRENT_DATE,CURRENT_TIME,CURRENT_TIMESTAMP,EXTRACT"; } /** * This is the string that can be used to escape '_' or '%' in * the string pattern style catalog search parameters. we have no default escape value, so = is the end of the next line * <P>The '_' character represents any single character. * <P>The '%' character represents any sequence of zero or * more characters. * @return the string used to escape wildcard characters */ public String getSearchStringEscape() { return ""; } /** * Get all the "extra" characters that can be used in unquoted * identifier names (those beyond a-z, A-Z, 0-9 and _). * * @return the string containing the extra characters */ public String getExtraNameCharacters() { return ""; } //-------------------------------------------------------------------- // Functions describing which features are supported. /** * Is "ALTER TABLE" with add column supported? * * @return true if so */ public boolean supportsAlterTableWithAddColumn() { return true; } /** * Is "ALTER TABLE" with drop column supported? * * @return true if so */ public boolean supportsAlterTableWithDropColumn() { return true; } /** * Is column aliasing supported? * * <P>If so, the SQL AS clause can be used to provide names for * computed columns or to provide alias names for columns as * required. * * A JDBC-Compliant driver always returns true. * * @return true if so */ public boolean supportsColumnAliasing() { return true; } /** * Are concatenations between NULL and non-NULL values NULL? * * A JDBC-Compliant driver always returns true. * * @return true if so */ public boolean nullPlusNonNullIsNull() { return true; } /** * Is the CONVERT function between SQL types supported? * * @return true if so */ public boolean supportsConvert() { return true; } /** * Is CONVERT between the given SQL types supported? * * @param fromType the type to convert from * @param toType the type to convert to * @return true if so * @see Types */ public boolean supportsConvert(int fromType, int toType) { /* * at the moment we don't support CONVERT at all, so we take the easy * way out. Eventually we need to figure out how to handle this * cleanly. */ return false; } /** * Are table correlation names supported? * * A JDBC-Compliant driver always returns true. * * @return true if so */ public boolean supportsTableCorrelationNames() { return true; } /** * If table correlation names are supported, are they restricted * to be different from the names of the tables? * * @return true if so */ public boolean supportsDifferentTableCorrelationNames() { return true; } /** * Are expressions in "ORDER BY" lists supported? * * @return true if so */ public boolean supportsExpressionsInOrderBy() { return false; } /** * Can an "ORDER BY" clause use columns not in the SELECT? * * @return true if so */ public boolean supportsOrderByUnrelated() { return false; } /** * Is some form of "GROUP BY" clause supported? * * @return true if so */ public boolean supportsGroupBy() { return true; } /** * Can a "GROUP BY" clause use columns not in the SELECT? * * @return true if so */ public boolean supportsGroupByUnrelated() { return true; } /** * Can a "GROUP BY" clause add columns not in the SELECT * provided it specifies all the columns in the SELECT? * * @return true if so */ public boolean supportsGroupByBeyondSelect() { return true; } /** * Is the escape character in "LIKE" clauses supported? * * A JDBC-Compliant driver always returns true. * * @return true if so */ public boolean supportsLikeEscapeClause() { return true; } /** * Are multiple ResultSets from a single execute supported? * * @return true if so */ public boolean supportsMultipleResultSets() { return true; } /** * Can we have multiple transactions open at once (on different * connections)? * * @return true if so */ public boolean supportsMultipleTransactions() { return true; } /** * Can columns be defined as non-nullable? * * A JDBC-Compliant driver always returns true. * * @return true if so */ public boolean supportsNonNullableColumns() { return true; } /** * Is the ODBC Minimum SQL grammar supported? * * All JDBC-Compliant drivers must return true. * * @return true if so */ public boolean supportsMinimumSQLGrammar() { return true; } /** * Is the ODBC Core SQL grammar supported? * * @return true if so */ public boolean supportsCoreSQLGrammar() { return false; } /** * Is the ODBC Extended SQL grammar supported? * * @return true if so */ public boolean supportsExtendedSQLGrammar() { return false; } /** * Is the ANSI92 entry level SQL grammar supported? * * All JDBC-Compliant drivers must return true. * * @return true if so */ public boolean supportsANSI92EntryLevelSQL() { return false; } /** * Is the ANSI92 intermediate SQL grammar supported? * * @return true if so * */ public boolean supportsANSI92IntermediateSQL() { return false; } /** * Is the ANSI92 full SQL grammar supported? * * @return true if so * */ public boolean supportsANSI92FullSQL() { return false; } /** * Is the SQL Integrity Enhancement Facility supported? * * @return true if so * */ public boolean supportsIntegrityEnhancementFacility() { return false; } /** * Is some form of outer join supported? * * @return true if so * */ public boolean supportsOuterJoins() { return true; } /** * Are full nested outer joins supported? * * @return true if so * */ public boolean supportsFullOuterJoins() { return false; } /** * Is there limited support for outer joins? (This will be true * if supportFullOuterJoins is true.) * * @return true if so * */ public boolean supportsLimitedOuterJoins() { return true; } /** * What's the database vendor's preferred term for "schema"? * * @return the vendor term * */ public String getSchemaTerm() { return "SCHEMA"; } /** * What's the database vendor's preferred term for "procedure"? * * @return the vendor term * */ public String getProcedureTerm() { return "PROCEDURE"; } /** * What's the database vendor's preferred term for "catalog"? * * @return the vendor term * */ public String getCatalogTerm() { return "CATALOG"; } /** * Does a catalog appear at the start of a qualified table name? * (Otherwise it appears at the end) * * @return true if it appears at the start * */ public boolean isCatalogAtStart() { return false; } /** * What's the separator between catalog and table name? * * @return the separator string * */ public String getCatalogSeparator() { return ""; } /** * Can a schema name be used in a data manipulation statement? * * @return true if so * */ public boolean supportsSchemasInDataManipulation() { return true; } /** * Can a schema name be used in a procedure call statement? * * @return true if so * */ public boolean supportsSchemasInProcedureCalls() { return true; } /** * Can a schema name be used in a table definition statement? * * @return true if so * */ public boolean supportsSchemasInTableDefinitions() { return true; } /** * Can a schema name be used in an index definition statement? * * @return true if so */ public boolean supportsSchemasInIndexDefinitions() { return true; } /** * Can a schema name be used in a privilege definition statement? * * @return true if so * */ public boolean supportsSchemasInPrivilegeDefinitions() { return true; } /** * Can a catalog name be used in a data manipulation statement? * * @return true if so * */ public boolean supportsCatalogsInDataManipulation() { return false; } /** * Can a catalog name be used in a procedure call statement? * * @return true if so * */ public boolean supportsCatalogsInProcedureCalls() {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -