参考资料
JDBC 4.3 Specification
https://jcp.org/aboutJava/communityprocess/mrel/jsr221/index3.html
Catalog
null
Database
存储组全名,如 root.sg
Schema
存储组全名,如 root.sg
Table
- 默认的设备数据表:_defaultDeviceTable
- 每个设备类型一个表
- deviceType1
- deviceType2
- 宽表:_defaultWideTable
Column
- 默认的设备数据表:time,device,s1,s2, ...
- 一个设备类型表:time,device,s1,s2, ...
- 宽表:time,root.sg.d1.s1, root.sg.d1.s2, ...
Primary key
- 默认的设备数据表:time,device
- 一个设备类型表:time,device
- 宽表:time
SQL Example:
SELECT *, ‘1’ FROM "root.sg"._defaultDeviceTable
WHERE device = ‘root.sg.d1’ AND ("time" < 4 OR s1 < 20) LIMIT 2 OFFSET 1;
SELECT *, ‘1’ FROM "root.sg".devicetype1
WHERE device = ‘root.sg.d1’ AND ("time" < 4 OR s1 < 20) LIMIT 2 OFFSET 1;
SELECT *, ‘1’ FROM "root.sg".devicetype2
WHERE device = ‘root.sg.d1’ AND ("time" < 4 OR s1 < 20) LIMIT 2 OFFSET 1;
SELECT *, ‘1’ FROM "root.sg"._defaultWideTable
WHERE device = ‘root.sg.d1’ AND ("time" < 4 OR s1 < 20) LIMIT 2 OFFSET 1;
Survey for JDBC Metadata
metadata | Modifier and Type | Method | Description | Test on MySQL | Design in IoTDB |
DatabaseMetaData | boolean | allProceduresAreCallable() | Retrieves whether the current user can call all the procedures returned by the method getProcedures. | FALSE | |
boolean | allTablesAreSelectable() | Retrieves whether the current user can use all the tables returned by the method getTables in a SELECT statement. | TRUE | ||
boolean | autoCommitFailureClosesAllResultSets() | Retrieves whether a SQLException while autoCommit is true indicates that all open ResultSets are closed, even ones that are holdable. | 需要确认结果集是否关闭(mysql返回false),itodb返回false | ||
boolean | dataDefinitionCausesTransactionCommit() | Retrieves whether a data definition statement within a transaction forces the transaction to commit. | FALSE | ||
boolean | dataDefinitionIgnoredInTransactions() | Retrieves whether this database ignores a data definition statement within a transaction. | FALSE | ||
boolean | deletesAreDetected(int type) | Retrieves whether or not a visible row delete can be detected by calling the method ResultSet.rowDeleted. | TRUE | ||
boolean | doesMaxRowSizeIncludeBlobs() | Retrieves whether the return value for the method getMaxRowSize includes the SQL data types LONGVARCHAR and LONGVARBINARY. | FALSE | ||
boolean | generatedKeyAlwaysReturned() | Retrieves whether a generated key will always be returned if the column name(s) or index(es) specified for the auto generated key column(s) are valid and the statement succeeds. | TRUE | ||
ResultSet | getAttributes(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String typeNamePattern, java.lang.String attributeNamePattern) | Retrieves a description of the given attribute of the given type for a user-defined type (UDT) that is available in the given schema and catalog. | mysql返回TYPE_CAT TYPE_SCHEM TYPE_NAME ATTR_NAME DATA_TYPE ATTR_TYPE_NAME ATTR_SIZE DECIMAL_DIGITS NUM_PREC_RADIX NULLABLE REMARKS ATTR_DEF SQL_DATA_TYPE SQL_DATETIME_SUB CHAR_OCTET_LENGTH ORDINAL_POSITION IS_NULLABLE SCOPE_CATALOG SCOPE_SCHEMA SCOPE_TABLE SOURCE_DATA_TYPE TYPE_CAT | ||
ResultSet | getBestRowIdentifier(java.lang.String catalog, java.lang.String schema, java.lang.String table, int scope, boolean nullable) | Retrieves a description of a table's optimal set of columns that uniquely identifies a row. | null(需要确认) | ||
ResultSet | getCatalogs() | Retrieves the catalog names available in this database. | mysql 返回数据库列表相当于show databases | ||
java.lang.String | getCatalogSeparator() | Retrieves the String that this database uses as the separator between a catalog and table name. | 返回表或者数据库的分隔符mysql返回. | ||
java.lang.String | getCatalogTerm() | Retrieves the database vendor's preferred term for "catalog". | mysql 返回database | ||
ResultSet | getClientInfoProperties() | Retrieves a list of the client info properties that the driver supports. | 需要确认iotdb,mysql 返回 4 NAME MAX_LEN DEFAULT_VALUE DESCRIPTION | ||
ResultSet | getColumnPrivileges(java.lang.String catalog, java.lang.String schema, java.lang.String table, java.lang.String columnNamePattern) | Retrieves a description of the access rights for a table's columns. | 确认访问权限 | ||
ResultSet | getColumns(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String tableNamePattern, java.lang.String columnNamePattern) | Retrieves a description of table columns available in the specified catalog. | 获取表内的字段的名字、类型、长度 | ||
Connection | getConnection() | Retrieves the connection that produced this metadata object. | Connection | ||
ResultSet | getCrossReference(java.lang.String parentCatalog, java.lang.String parentSchema, java.lang.String parentTable, java.lang.String foreignCatalog, java.lang.String foreignSchema, java.lang.String foreignTable) | Retrieves a description of the foreign key columns in the given foreign key table that reference the primary key or the columns representing a unique constraint of the parent table (could be the same or a different table). | 返回null | ||
int | getDatabaseMajorVersion() | Retrieves the major version number of the underlying database. | mysql主版本号5.6 返回5 | ||
int | getDatabaseMinorVersion() | Retrieves the minor version number of the underlying database. | mysql次版本号5.6返回6 | ||
java.lang.String | getDatabaseProductName() | Retrieves the name of this database product. | IOTdb | ||
java.lang.String | getDatabaseProductVersion() | Retrieves the version number of this database product. | 产品版本好5.6.1 | ||
int | getDefaultTransactionIsolation() | Retrieves this database's default transaction isolation level. | 返回事物隔离级别(默认脏读)、返回其他数值 | ||
int | getDriverMajorVersion() | Retrieves this JDBC driver's major version number. | 主版本号5.1返回5 | ||
int | getDriverMinorVersion() | Retrieves this JDBC driver's minor version number. | 次版本号5.1返回1 | ||
java.lang.String | getDriverName() | Retrieves the name of this JDBC driver. | 驱动名称 | ||
java.lang.String | getDriverVersion() | Retrieves the version number of this JDBC driver as a String. | 驱动版本号5.1.1 | ||
ResultSet | getExportedKeys(java.lang.String catalog, java.lang.String schema, java.lang.String table) | Retrieves a description of the foreign key columns that reference the given table's primary key columns (the foreign keys exported by a table). | null | ||
java.lang.String | getExtraNameCharacters() | Retrieves all the "extra" characters that can be used in unquoted identifier names (those beyond a-z, A-Z, 0-9 and _). | 根据返回值,调整为iotdb可以用的字符 | ||
ResultSet | getFunctionColumns(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String functionNamePattern, java.lang.String columnNamePattern) | Retrieves a description of the given catalog's system or user function parameters and return type. | 返回用户函数参数和返回类型 | ||
ResultSet | getFunctions(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String functionNamePattern) | Retrieves a description of the system and user functions available in the given catalog. | 返回用户函数的描述,返回值正在确认 | ||
java.lang.String | getIdentifierQuoteString() | Retrieves the string used to quote SQL identifiers. | 检索用于引用SQL标识符的字符串 | ||
ResultSet | getImportedKeys(java.lang.String catalog, java.lang.String schema, java.lang.String table) | Retrieves a description of the primary key columns that are referenced by the given table's foreign key columns (the primary keys imported by a table). | 返回null | ||
ResultSet | getIndexInfo(java.lang.String catalog, java.lang.String schema, java.lang.String table, boolean unique, boolean approximate) | Retrieves a description of the given table's indices and statistics. | 获取索引信息 | ||
int | getJDBCMajorVersion() | Retrieves the major JDBC version number for this driver. | jdbc 主版本号 | ||
int | getJDBCMinorVersion() | Retrieves the minor JDBC version number for this driver. | jdbc次版本号 | ||
int | getMaxBinaryLiteralLength() | Retrieves the maximum number of hex characters this database allows in an inline binary literal. | interger.maxvalue | ||
int | getMaxCatalogNameLength() | Retrieves the maximum number of characters that this database allows in a catalog name. | 数据库表最大字符长度 | ||
int | getMaxCharLiteralLength() | Retrieves the maximum number of characters this database allows for a character literal. | interger.maxvalue,mysal返回16777208 | ||
int | getMaxColumnNameLength() | Retrieves the maximum number of characters this database allows for a column name. | 列名长度(确认) | ||
int | getMaxColumnsInGroupBy() | Retrieves the maximum number of columns this database allows in a GROUP BY clause. | group by 个数(确认) | ||
int | getMaxColumnsInIndex() | Retrieves the maximum number of columns this database allows in an index. | 确认最大索引个数 | ||
int | getMaxColumnsInOrderBy() | Retrieves the maximum number of columns this database allows in an ORDER BY clause. | 返回0 | ||
int | getMaxColumnsInSelect() | Retrieves the maximum number of columns this database allows in a SELECT list. | select最大列数(确认) | ||
int | getMaxColumnsInTable() | Retrieves the maximum number of columns this database allows in a table. | 表最大列(确认) | ||
int | getMaxConnections() | Retrieves the maximum number of concurrent connections to this database that are possible. | 最大链接(确认) | ||
int | getMaxCursorNameLength() | Retrieves the maximum number of characters that this database allows in a cursor name. | 返回0 | ||
int | getMaxIndexLength() | Retrieves the maximum number of bytes this database allows for an index, including all of the parts of the index. | integer.maxvalue | ||
default long | getMaxLogicalLobSize() | Retrieves the maximum number of bytes this database allows for the logical size for a LOB. | integer.maxvalue | ||
int | getMaxProcedureNameLength() | Retrieves the maximum number of characters that this database allows in a procedure name. | 返回0 | ||
int | getMaxRowSize() | Retrieves the maximum number of bytes this database allows in a single row. | 一条记录最大字符串(确认) | ||
int | getMaxSchemaNameLength() | Retrieves the maximum number of characters that this database allows in a schema name. | 数据库名称最大字符串数 | ||
int | getMaxStatementLength() | Retrieves the maximum number of characters this database allows in an SQL statement. | integer.maxvalue | ||
int | getMaxStatements() | Retrieves the maximum number of active statements to this database that can be open at the same time. | 确认 | ||
int | getMaxTableNameLength() | Retrieves the maximum number of characters this database allows in a table name. | 确认表名最大长度 | ||
int | getMaxTablesInSelect() | Retrieves the maximum number of tables this database allows in a SELECT statement. | 确认select 中最大表数量 | ||
int | getMaxUserNameLength() | Retrieves the maximum number of characters this database allows in a user name. | 确认最大长度 | ||
java.lang.String | getNumericFunctions() | Retrieves a comma-separated list of math functions available with this database. | 返回函数mysql返回ABS,ACOS,ASIN,ATAN,ATAN2,BIT_COUNT,CEILING, COS,COT,DEGREES, EXP,FLOOR,LOG,LOG10,MAX,MIN,MOD,PI,POW,POWER,RADIANS,RAND, ROUND,SIN,SQRT,TAN,TRUNCATE** LAST_INSERT_ID,VERSION | ||
ResultSet | getPrimaryKeys(java.lang.String catalog, java.lang.String schema, java.lang.String table) | Retrieves a description of the given table's primary key columns. | 等表定义出来 | ||
ResultSet | getProcedureColumns(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String procedureNamePattern, java.lang.String columnNamePattern) | Retrieves a description of the given catalog's stored procedure parameter and result columns. | null | ||
ResultSet | getProcedures(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String procedureNamePattern) | Retrieves a description of the stored procedures available in the given catalog. | null | ||
java.lang.String | getProcedureTerm() | Retrieves the database vendor's preferred term for "procedure". | null | ||
ResultSet | getPseudoColumns(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String tableNamePattern, java.lang.String columnNamePattern) | Retrieves a description of the pseudo or hidden columns available in a given table within the specified catalog and schema. | 返回null,伪列,例如oracle 中sysdate, systimestamp,RowNum ,RowID, CURRVAL, NEXTVAL,UID, USER,Level,ORA_ROWSCN。 返回null | ||
int | getResultSetHoldability() | Retrieves this database's default holdability for ResultSet objects. | 返回2 (包含 游标/ ResultSet对象)时是否应关闭ResultSet对象 (光标)或使其保持打开状态。DatabaseMetaData接口的 getResultSetHoldability() 方法检索基础数据库的ResultSet对象的默认可保存性。 每当使用commit()Connection接口的方法提交/保存事务时, 在当前事务中创建的ResultSet对象(已打开)将保持打开状态。 每当您使用commit()Connection接口的方法提交/保存事务时, 在当前事务中创建的ResultSet对象(已打开)将被关闭。 | 1 | |
RowIdLifetime | getRowIdLifetime() | Indicates whether this data source supports the SQL ROWID type, and the lifetime for which a RowId object remains valid. | FALSE | ||
ResultSet | getSchemas() | Retrieves the schema names available in this database. | null | ||
ResultSet | getSchemas(java.lang.String catalog, java.lang.String schemaPattern) | Retrieves the schema names available in this database. | null | ||
java.lang.String | getSchemaTerm() | Retrieves the database vendor's preferred term for "schema". | 返回"" | ||
java.lang.String | getSearchStringEscape() | Retrieves the string that can be used to escape wildcard characters. | 确认返回值,此方法返回一个字符串参数,表示用于转义通配符的值,mysql返回一个\ | ||
java.lang.String | getSQLKeywords() | Retrieves a comma-separated list of all of this database's SQL keywords that are NOT also SQL:2003 keywords. | 输出sql关键字如:database | ||
int | getSQLStateType() | Indicates whether the SQLSTATE returned by SQLException.getSQLState is X/Open (now known as Open Group) SQL CLI or SQL:2003. | 返回0,返回数字表示false,mysql返回2 | ||
java.lang.String | getStringFunctions() | Retrieves a comma-separated list of string functions available with this database. | 确认,返回函数列表例如:ASCII,BIN,BIT_LENGTH,CHAR,CHARACTER_LENGTH, CHAR_LENGTH,CONCAT,CONCAT_WS,CONV,ELT, EXPORT_SET,FIELD,FIND_IN_SET,HEX,INSERT,INSTR,LCASE,LEFT,LENGTH, LOAD_FILE,LOCATE,LOCATE,LOWER,LPAD,LTRIM, MAKE_SET,MATCH,MID,OCT,OCTET_LENGTH,ORD,POSITION,QUOTE,REPEAT, REPLACE,REVERSE,RIGHT,RPAD,RTRIM,SOUNDEX, SPACE,STRCMP,SUBSTRING,SUBSTRING,SUBSTRING,SUBSTRING, SUBSTRING_INDEX,TRIM,UCASE,UPPER | ||
ResultSet | getSuperTables(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String tableNamePattern) | Retrieves a description of the table hierarchies defined in a particular schema in this database. | null | ||
ResultSet | getSuperTypes(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String typeNamePattern) | Retrieves a description of the user-defined type (UDT) hierarchies defined in a particular schema in this database. | null | ||
java.lang.String | getSystemFunctions() | Retrieves a comma-separated list of system functions available with this database. | 返回内置函数mysql返回DATABASE USER PASSWORD | ||
ResultSet | getTablePrivileges(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String tableNamePattern) | Retrieves a description of the access rights for each table available in a catalog. | 确认返回值 表特权可用于表中的一个或多个列。假定此特权可用于所有列是错误的 (对于某些系统可能是正确的,但并非所有的系统都如此)。 table_schem、table_name 和 privilege 进行排序。 如果不允许,则为 "no";如果未知,则为 null | ||
ResultSet | getTables(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String tableNamePattern, java.lang.String[] types) | Retrieves a description of the tables available in the given catalog. | 获取表 | ||
ResultSet | getTableTypes() | Retrieves the table types available in this database. | 返回表的类型mysql返回TABLE VIEW LOCAL TEMPORARY | ||
java.lang.String | getTimeDateFunctions() | Retrieves a comma-separated list of the time and date functions available with this database. | 返回日期函数mysql返回如下DAYOFWEEK,WEEKDAY,DAYOFMONTH, DAYOFYEAR,MONTH,DAYNAME, MONTHNAME,QUARTER,WEEK,YEAR,HOUR,MINUTE,SECOND,PERIOD_ADD, PERIOD_DIFF,TO_DAYS,FROM_DAYS,DATE_FORMAT, TIME_FORMAT,CURDATE,CURRENT_DATE, CURTIME,CURRENT_TIME,NOW,SYSDATE,CURRENT_TIMESTAMP, UNIX_TIMESTAMP, FROM_UNIXTIME,SEC_TO_TIME,TIME_TO_SEC ENCRYPT,LAST_INSERT_ID,VERSION | ||
ResultSet | getTypeInfo() | Retrieves a description of all the data types supported by this database. | 检索当前数据库支持的所有标准 SQL 类型的说明,返回null | ||
ResultSet | getUDTs(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String typeNamePattern, int[] types) | Retrieves a description of the user-defined types (UDTs) defined in a particular schema. | null | ||
java.lang.String | getURL() | Retrieves the URL for this DBMS. | 返回urlmysql返回jdbc:mysql://8.131.67.59:3306/gonghui_data?useSSL=false | ||
java.lang.String | getUserName() | Retrieves the user name as known to this database. | 返回用户名username@219.142.240.74 | ||
ResultSet | getVersionColumns(java.lang.String catalog, java.lang.String schema, java.lang.String table) | Retrieves a description of a table's columns that are automatically updated when any value in a row is updated. | null | ||
boolean | insertsAreDetected(int type) | Retrieves whether or not a visible row insert can be detected by calling the method ResultSet.rowInserted. | FALSE | ||
boolean | isCatalogAtStart() | Retrieves whether a catalog appears at the start of a fully qualified table name. | FALSE | ||
boolean | isReadOnly() | Retrieves whether this database is in read-only mode. | TRUE | ||
boolean | locatorsUpdateCopy() | Indicates whether updates made to a LOB are made on a copy or directly to the LOB. | FALSE | ||
boolean | nullPlusNonNullIsNull() | Retrieves whether this database supports concatenations between NULL and non-NULL values being NULL. | FALSE | ||
boolean | nullsAreSortedAtEnd() | Retrieves whether NULL values are sorted at the end regardless of sort order. | 返回false,把null排在结尾无论顺序如何,如果排在结尾为true,否则为false。 | ||
boolean | nullsAreSortedAtStart() | Retrieves whether NULL values are sorted at the start regardless of sort order. | 返回false,把null排在开头无论顺序如何,如果排在开头为true,否则为false。 | ||
boolean | nullsAreSortedHigh() | Retrieves whether NULL values are sorted high. | 返回false,把null排在最前面,true排在最前面,否则为false | ||
boolean | nullsAreSortedLow() | Retrieves whether NULL values are sorted low. | 返回false,把null排在最后面,true排在最后面,否则为false | ||
boolean | othersDeletesAreVisible(int type) | Retrieves whether deletes made by others are visible. | TRUE | ||
boolean | othersInsertsAreVisible(int type) | Retrieves whether inserts made by others are visible. | TRUE | ||
boolean | othersUpdatesAreVisible(int type) | Retrieves whether updates made by others are visible. | FALSE | ||
boolean | ownDeletesAreVisible(int type) | Retrieves whether a result set's own deletes are visible. | TRUE | ||
boolean | ownInsertsAreVisible(int type) | Retrieves whether a result set's own inserts are visible. | TRUE | ||
boolean | ownUpdatesAreVisible(int type) | Retrieves whether for the given type of ResultSet object, the result set's own updates are visible. | FALSE | ||
boolean | storesLowerCaseIdentifiers() | Retrieves whether this database treats mixed case unquoted SQL identifiers as case insensitive and stores them in lower case. | FALSE | ||
boolean | storesLowerCaseQuotedIdentifiers() | Retrieves whether this database treats mixed case quoted SQL identifiers as case insensitive and stores them in lower case. | FALSE | ||
boolean | storesMixedCaseIdentifiers() | Retrieves whether this database treats mixed case unquoted SQL identifiers as case insensitive and stores them in mixed case. | TRUE | ||
boolean | storesMixedCaseQuotedIdentifiers() | Retrieves whether this database treats mixed case quoted SQL identifiers as case insensitive and stores them in mixed case. | TRUE | ||
boolean | storesUpperCaseIdentifiers() | Retrieves whether this database treats mixed case unquoted SQL identifiers as case insensitive and stores them in upper case. | TRUE | ||
boolean | storesUpperCaseQuotedIdentifiers() | Retrieves whether this database treats mixed case quoted SQL identifiers as case insensitive and stores them in upper case. | TRUE | ||
boolean | supportsAlterTableWithAddColumn() | Retrieves whether this database supports ALTER TABLE with add column. | TRUE | ||
boolean | supportsAlterTableWithDropColumn() | Retrieves whether this database supports ALTER TABLE with drop column. | TRUE | ||
boolean | supportsANSI92EntryLevelSQL() | Retrieves whether this database supports the ANSI92 entry level SQL grammar. | FALSE | ||
boolean | supportsANSI92FullSQL() | Retrieves whether this database supports the ANSI92 full SQL grammar supported. | FALSE | ||
boolean | supportsANSI92IntermediateSQL() | Retrieves whether this database supports the ANSI92 intermediate SQL grammar supported. | FALSE | ||
boolean | supportsBatchUpdates() | Retrieves whether this database supports batch updates. | FALSE | ||
boolean | supportsCatalogsInDataManipulation() | Retrieves whether a catalog name can be used in a data manipulation statement. | TRUE | ||
boolean | supportsCatalogsInIndexDefinitions() | Retrieves whether a catalog name can be used in an index definition statement. | FALSE | ||
boolean | supportsCatalogsInPrivilegeDefinitions() | Retrieves whether a catalog name can be used in a privilege definition statement. | FALSE | ||
boolean | supportsCatalogsInProcedureCalls() | Retrieves whether a catalog name can be used in a procedure call statement. | FALSE | ||
boolean | supportsCatalogsInTableDefinitions() | Retrieves whether a catalog name can be used in a table definition statement. | 是否可以使用数据库名称false | ||
boolean | supportsColumnAliasing() | Retrieves whether this database supports column aliasing. | TRUE | ||
boolean | supportsConvert() | Retrieves whether this database supports the JDBC scalar function CONVERT for the conversion of one JDBC type to another. | FALSE | ||
boolean | supportsConvert(int fromType, int toType) | Retrieves whether this database supports the JDBC scalar function CONVERT for conversions between the JDBC types fromType and toType. | FALSE | ||
boolean | supportsCoreSQLGrammar() | Retrieves whether this database supports the ODBC Core SQL grammar. | FALSE | ||
boolean | supportsCorrelatedSubqueries() | Retrieves whether this database supports correlated subqueries. | FALSE | ||
boolean | supportsDataDefinitionAndDataManipulationTransactions() | Retrieves whether this database supports both data definition and data manipulation statements within a transaction. | FALSE | ||
boolean | supportsDataManipulationTransactionsOnly() | Retrieves whether this database supports only data manipulation statements within a transaction. | TRUE | ||
boolean | supportsDifferentTableCorrelationNames() | Retrieves whether, when table correlation names are supported, they are restricted to being different from the names of the tables. | FALSE | ||
boolean | supportsExpressionsInOrderBy() | Retrieves whether this database supports expressions in ORDER BY lists. | TRUE | ||
boolean | supportsExtendedSQLGrammar() | Retrieves whether this database supports the ODBC Extended SQL grammar. | FALSE | ||
boolean | supportsFullOuterJoins() | Retrieves whether this database supports full nested outer joins. | FALSE | ||
boolean | supportsGetGeneratedKeys() | Retrieves whether auto-generated keys can be retrieved after a statement has been executed | FALSE | ||
boolean | supportsGroupBy() | Retrieves whether this database supports some form of GROUP BY clause. | TRUE | ||
boolean | supportsGroupByBeyondSelect() | Retrieves whether this database supports using columns not included in the SELECT statement in a GROUP BY clause provided that all of the columns in the SELECT statement are included in the GROUP BY clause. | TRUE | ||
boolean | supportsGroupByUnrelated() | Retrieves whether this database supports using a column that is not in the SELECT statement in a GROUP BY clause. | TRUE | ||
boolean | supportsIntegrityEnhancementFacility() | Retrieves whether this database supports the SQL Integrity Enhancement Facility. | FALSE | ||
boolean | supportsLikeEscapeClause() | Retrieves whether this database supports specifying a LIKE escape clause. | FALSE | ||
boolean | supportsLimitedOuterJoins() | Retrieves whether this database provides limited support for outer joins. | TRUE | ||
boolean | supportsMinimumSQLGrammar() | Retrieves whether this database supports the ODBC Minimum SQL grammar. | FALSE | ||
boolean | supportsMixedCaseIdentifiers() | Retrieves whether this database treats mixed case unquoted SQL identifiers as case sensitive and as a result stores them in mixed case. | TRUE | ||
boolean | supportsMixedCaseQuotedIdentifiers() | Retrieves whether this database treats mixed case quoted SQL identifiers as case sensitive and as a result stores them in mixed case. | TRUE | ||
boolean | supportsMultipleOpenResults() | Retrieves whether it is possible to have multiple ResultSet objects returned from a CallableStatement object simultaneously. | FALSE | ||
boolean | supportsMultipleResultSets() | Retrieves whether this database supports getting multiple ResultSet objects from a single call to the method execute. | FALSE | ||
boolean | supportsMultipleTransactions() | Retrieves whether this database allows having multiple transactions open at once (on different connections). | TRUE | ||
boolean | supportsNamedParameters() | Retrieves whether this database supports named parameters to callable statements. | FALSE | ||
boolean | supportsNonNullableColumns() | Retrieves whether columns in this database may be defined as non-nullable. | FALSE | ||
boolean | supportsOpenCursorsAcrossCommit() | Retrieves whether this database supports keeping cursors open across commits. | FALSE | ||
boolean | supportsOpenCursorsAcrossRollback() | Retrieves whether this database supports keeping cursors open across rollbacks. | FALSE | ||
boolean | supportsOpenStatementsAcrossCommit() | Retrieves whether this database supports keeping statements open across commits. | FALSE | ||
boolean | supportsOpenStatementsAcrossRollback() | Retrieves whether this database supports keeping statements open across rollbacks. | FALSE | ||
boolean | supportsOrderByUnrelated() | Retrieves whether this database supports using a column that is not in the SELECT statement in an ORDER BY clause. | TRUE | ||
boolean | supportsOuterJoins() | Retrieves whether this database supports some form of outer join. | TRUE | ||
boolean | supportsPositionedDelete() | Retrieves whether this database supports positioned DELETE statements. | 需确认(true) | ||
boolean | supportsPositionedUpdate() | Retrieves whether this database supports positioned UPDATE statements. | 需确认(true) | ||
default boolean | supportsRefCursors() | Retrieves whether this database supports REF CURSOR. | FALSE | ||
boolean | supportsResultSetConcurrency(int type, int concurrency) | Retrieves whether this database supports the given concurrency type in combination with the given result set type. | FALSE | ||
boolean | supportsResultSetHoldability(int holdability) | Retrieves whether this database supports the given result set holdability. | 返回true 的方法提交事务 (包含上述游标/ ResultSet对象)时是关闭还是 保持ResultSet对象(光标)打开。 保存性设置为此值。 每当您使用commit()Connection接口的方法提交/保存事务时, 在当前事务中创建 的ResultSet对象(已打开)将被关闭。 可保存性设置为此值。 每当使用commit()Connection接口的方法提交/保存事务时, 在当前事务中创建的ResultSet对象(已打开)将保持打开状态。 | ||
boolean | supportsResultSetType(int type) | Retrieves whether this database supports the given result set type. | TRUE | ||
boolean | supportsSavepoints() | Retrieves whether this database supports savepoints. | FALSE | ||
boolean | supportsSchemasInDataManipulation() | Retrieves whether a schema name can be used in a data manipulation statement. | FALSE | ||
boolean | supportsSchemasInIndexDefinitions() | Retrieves whether a schema name can be used in an index definition statement. | FALSE | ||
boolean | supportsSchemasInPrivilegeDefinitions() | Retrieves whether a schema name can be used in a privilege definition statement. | FALSE | ||
boolean | supportsSchemasInProcedureCalls() | Retrieves whether a schema name can be used in a procedure call statement. | FALSE | ||
boolean | supportsSchemasInTableDefinitions() | Retrieves whether a schema name can be used in a table definition statement. | FALSE | ||
boolean | supportsSelectForUpdate() | Retrieves whether this database supports SELECT FOR UPDATE statements. | FALSE | ||
default boolean | supportsSharding() | Retrieves whether this database supports sharding. | FALSE | ||
boolean | supportsStatementPooling() | Retrieves whether this database supports statement pooling. | FALSE | ||
boolean | supportsStoredFunctionsUsingCallSyntax() | Retrieves whether this database supports invoking user-defined or vendor functions using the stored procedure escape syntax. | FALSE | ||
boolean | supportsStoredProcedures() | Retrieves whether this database supports stored procedure calls that use the stored procedure escape syntax. | FALSE | ||
boolean | supportsSubqueriesInComparisons() | Retrieves whether this database supports subqueries in comparison expressions. | FALSE | ||
boolean | supportsSubqueriesInExists() | Retrieves whether this database supports subqueries in EXISTS expressions. | FALSE | ||
boolean | supportsSubqueriesInIns() | Retrieves whether this database supports subqueries in IN expressions. | FALSE | ||
boolean | supportsSubqueriesInQuantifieds() | Retrieves whether this database supports subqueries in quantified expressions. | FALSE | ||
boolean | supportsTableCorrelationNames() | Retrieves whether this database supports table correlation names. | FALSE | ||
boolean | supportsTransactionIsolationLevel(int level) | Retrieves whether this database supports the given transaction isolation level. | FALSE | ||
boolean | supportsTransactions() | Retrieves whether this database supports transactions. | FALSE | ||
boolean | supportsUnion() | Retrieves whether this database supports SQL UNION. | FALSE | ||
boolean | supportsUnionAll() | Retrieves whether this database supports SQL UNION ALL. | FALSE | ||
boolean | updatesAreDetected(int type) | Retrieves whether or not a visible row update can be detected by calling the method ResultSet.rowUpdated. | FALSE | ||
boolean | usesLocalFilePerTable() | Retrieves whether this database uses a file for each table. | FALSE | ||
boolean | usesLocalFiles() | Retrieves whether this database stores tables in a local file. | FALSE | ||
ResultSetMetaData | java.lang.String | getCatalogName(int column) | Gets the designated column's table's catalog name. | ||
java.lang.String | getColumnClassName(int column) | Returns the fully-qualified name of the Java class whose instances are manufactured if the method ResultSet.getObject is called to retrieve a value from the column. | |||
int | getColumnCount() | Returns the number of columns in this ResultSet object. | |||
int | getColumnDisplaySize(int column) | Indicates the designated column's normal maximum width in characters. | |||
java.lang.String | getColumnLabel(int column) | Gets the designated column's suggested title for use in printouts and displays. | |||
java.lang.String | getColumnName(int column) | Get the designated column's name. | |||
int | getColumnType(int column) | Retrieves the designated column's SQL type. | |||
java.lang.String | getColumnTypeName(int column) | Retrieves the designated column's database-specific type name. | |||
int | getPrecision(int column) | Get the designated column's specified column size. | |||
int | getScale(int column) | Gets the designated column's number of digits to right of the decimal point. | |||
java.lang.String | getSchemaName(int column) | Get the designated column's table's schema. | |||
java.lang.String | getTableName(int column) | Gets the designated column's table name. | |||
boolean | isAutoIncrement(int column) | Indicates whether the designated column is automatically numbered. | |||
boolean | isCaseSensitive(int column) | Indicates whether a column's case matters. | |||
boolean | isCurrency(int column) | Indicates whether the designated column is a cash value. | |||
boolean | isDefinitelyWritable(int column) | Indicates whether a write on the designated column will definitely succeed. | |||
int | isNullable(int column) | Indicates the nullability of values in the designated column. | |||
boolean | isReadOnly(int column) | Indicates whether the designated column is definitely not writable. | |||
boolean | isSearchable(int column) | Indicates whether the designated column can be used in a where clause. | |||
boolean | isSigned(int column) | Indicates whether values in the designated column are signed numbers. | |||
boolean | isWritable(int column) | Indicates whether it is possible for a write on the designated column to succeed. | |||
RowSetMetaData | void | setAutoIncrement(int columnIndex, boolean property) | Sets whether the designated column is automatically numbered, The default is for a RowSet object's columns not to be automatically numbered. | ||
void | setCaseSensitive(int columnIndex, boolean property) | Sets whether the designated column is case sensitive. | |||
void | setCatalogName(int columnIndex, java.lang.String catalogName) | Sets the designated column's table's catalog name, if any, to the given String. | |||
void | setColumnCount(int columnCount) | Sets the number of columns in the RowSet object to the given number. | |||
void | setColumnDisplaySize(int columnIndex, int size) | Sets the designated column's normal maximum width in chars to the given int. | |||
void | setColumnLabel(int columnIndex, java.lang.String label) | Sets the suggested column title for use in printouts and displays, if any, to the given String. | |||
void | setColumnName(int columnIndex, java.lang.String columnName) | Sets the name of the designated column to the given String. | |||
void | setColumnType(int columnIndex, int SQLType) | Sets the designated column's SQL type to the one given. | |||
void | setColumnTypeName(int columnIndex, java.lang.String typeName) | Sets the designated column's type name that is specific to the data source, if any, to the given String. | |||
void | setCurrency(int columnIndex, boolean property) | Sets whether the designated column is a cash value. | |||
void | setNullable(int columnIndex, int property) | Sets whether the designated column's value can be set to NULL. | |||
void | setPrecision(int columnIndex, int precision) | Sets the designated column's number of decimal digits to the given int. | |||
void | setScale(int columnIndex, int scale) | Sets the designated column's number of digits to the right of the decimal point to the given int. | |||
void | setSchemaName(int columnIndex, java.lang.String schemaName) | Sets the name of the designated column's table's schema, if any, to the given String. | |||
void | setSearchable(int columnIndex, boolean property) | Sets whether the designated column can be used in a where clause. | |||
void | setSigned(int columnIndex, boolean property) | Sets whether the designated column is a signed number. | |||
void | setTableName(int columnIndex, java.lang.String tableName) | Sets the designated column's table name, if any, to the given String. | |||
ParameterMetaData | java.lang.String | getParameterClassName(int param) | Retrieves the fully-qualified name of the Java class whose instances should be passed to the method PreparedStatement.setObject. | ||
int | getParameterCount() | Retrieves the number of parameters in the PreparedStatement object for which this ParameterMetaData object contains information. | |||
int | getParameterMode(int param) | Retrieves the designated parameter's mode. | |||
int | getParameterType(int param) | Retrieves the designated parameter's SQL type. | |||
java.lang.String | getParameterTypeName(int param) | Retrieves the designated parameter's database-specific type name. | |||
int | getPrecision(int param) | Retrieves the designated parameter's specified column size. | |||
int | getScale(int param) | Retrieves the designated parameter's number of digits to right of the decimal point. | |||
int | isNullable(int param) | Retrieves whether null values are allowed in the designated parameter. | |||
boolean | isSigned(int param) | Retrieves whether values for the designated parameter can be signed numbers. |