📄 databasemetadata.h
字号:
*/ int getMaxColumnsInTable(); /** Returns the maximum length of a cursor name. */ int getMaxCursorNameLength(); /** Returns the maximum length of an index in bytes. */ int getMaxIndexLength(); /** Returns the maximum length of a schema name. */ int getMaxSchemaNameLength(); /** Returns the maximum length of a procedure name. */ int getMaxProcedureNameLength(); /** Returns the maximum length of a catalog name. */ int getMaxCatalogNameLength(); /** Returns the maximum size of a row in bytes. */ int getMaxRowSize(); /** Returns true if the value returned by getMaxRowSize() includes * BLOBs. */ bool doesMaxRowSizeIncludeBlobs(); /** Returns the maximum length of a statement (query). */ int getMaxStatementLength(); /** Returns the maximum length of a table name. */ int getMaxTableNameLength(); /** Returns the maximum number of tables that can be joined at once. * @return zero if unknown. */ int getMaxTablesInSelect(); /** Returns the maximum length of a username. */ int getMaxUserNameLength(); /** Returns the maximum number of connections we can have open * to this data source. */ int getMaxConnections(); /** Returns the maximim number of statements that can be open * on this connection. */ int getMaxStatements(); /** Returns true if the data source supports case sensitive * mixed case identifiers. */ bool supportsMixedCaseIdentifiers(); /** Returns true if the data source supports case sensitive * mixed case quoted identifiers. */ bool supportsMixedCaseQuotedIdentifiers(); /** Returns true if the data source supports some form of * stored procedures. */ bool supportsStoredProcedures(); /** Returns true if the data source supports the * GROUP BY clause. */ bool supportsGroupBy(); /** Returns true if the columns in a GROUP BY clause are independent * of the selected ones. */ bool supportsGroupByUnrelated(); /** Returns true if the columns in a GROUP BY don't have to be * selected. */ bool supportsGroupByBeyondSelect(); /** Returns true if the data source supports UNION joins. */ bool supportsUnion(); /** Returns true if the data source supports UNION ALL joins. */ bool supportsUnionAll(); /** Returns true if the data source supports some form of * outer joins. */ bool supportsOuterJoins(); /** Returns true if the data source fully supports outer joins. */ bool supportsFullOuterJoins(); /** Returns true if the data source only supports certain types of * outer joins. */ bool supportsLimitedOuterJoins(); /** Returns true if the data source uses a file for each table */ bool usesLocalFilePerTable(); /** Returns true if the data source uses local files */ bool usesLocalFiles(); /** Returns true if NULL values are sorted first, regardless of * the sort order. */ bool nullsAreSortedAtStart(); /** Returns true if NULL values are sorted last, regardless of * the sort order. */ bool nullsAreSortedAtEnd(); /** Returns true if NULL values are sorted high. */ bool nullsAreSortedHigh(); /** Returns true if NULL values are sorted low. */ bool nullsAreSortedLow(); /** Returns true if all procedures returned by getProcedures() are callable * by the current user. */ bool allProceduresAreCallable(); /** Returns true if all tables returned by getTables() are selectable by * the current user. */ bool allTablesAreSelectable(); /** Returns true if the data source or the current connection is in * read-only mode. */ bool isReadOnly(); /** Returns true if the data source treats identifiers as case * insensitive and stores them in lower case. */ bool storesLowerCaseIdentifiers(); /** Returns true if the data source treats quoted identifiers as case * insensitive and stores them in lower case. */ bool storesLowerCaseQuotedIdentifiers(); /** Returns true if the data source treats identifiers as case * insensitive and stores them in mixed case. */ bool storesMixedCaseIdentifiers(); /** Returns true if the data source treats quoted identifiers as case * insensitive and stores them in mixed case. */ bool storesMixedCaseQuotedIdentifiers(); /** Returns true if the data source treats identifiers as case * insensitive and stores them in upper case. */ bool storesUpperCaseIdentifiers(); /** Returns true if the data source treats quoted identifiers as case * insensitive and stores them in upper case. */ bool storesUpperCaseQuotedIdentifiers(); /** Fetches a list of data types supported by this data source. * * The returned ResultSet is ordered by <code>DATA_TYPE</code> and then * by how closely the type maps to the corresponding ODBC SQL type. * It contains the following columns: * <ol> * <li><b>TYPE_NAME</b> - string - native type name * <li><b>DATA_TYPE</b> - short - SQL data type from Types * <li><b>COLUMN_SIZE</b> - int - maximum precision * <li><b>LITERAL_PREFIX</b> - string - prefix used to quote a literal. * Can be <code>NULL</code>. * <li><b>LITERAL_SUFFIX</b> - string - suffix used to quote a literal. * Can be <code>NULL</code>. * <li><b>CREATE_PARAMS</b> - string - comma separated possible list of * parameters to creating a column of this type * <li><b>NULLABLE</b> - short - whether this type can contain <code>NULL</code>s: * <ul> * <li><code>typeNoNulls</code> - no * <li><code>typeNullable</code> - yes, can be nullable * <li><code>typeNullableUnknown</code> - nobody knows * </ul> * <li><b>CASE_SENSITIVE</b> - bool - whether this type is case sensitive * <li><b>SEARCHABLE</b> - bool - whether this type can be searched, eg * used in <code>WHERE</code>-clauses: * <ul> * <li><code>typePredNone</code> - no * <li><code>typePredChar</code> - yes, but only with a <code>LIKE</code> * predicate * <li><code>typePredBasic</code> - yes, except in a <code>LIKE</code> * predicate * <li><code>typeSearchable</code> - yes * </ul> * <li><b>UNSIGNED_ATTRIBUTE</b> - bool - <code>true</code> if this type is unsigned * <li><b>FIXED_PREC_SCALE</b> - bool - whether this type has predefined fixed * precision and scale (eg is useful for money) * <li><b>AUTO_UNIQUE_VALUE</b> - bool - whether this type can be used for an * autoincrementing value. <code>NULL</code> if not applicable. * <li><b>LOCAL_TYPE_NAME</b> - string - localized native type name. Can be * <code>NULL</code>. * <li><b>MINIMUM_SCALE</b> - short - minimum supported scale, if applicable * <li><b>MAXIMUM_SCALE</b> - short - maximum supported scale, if applicable * <li><b>SQL_DATA_TYPE</b> - short - unused * <li><b>SQL_DATETIME_SUB</b> - short - unused * <li><b>NUM_PREC_RADIX</b> - int - radix, if applicable * </ol> */ ResultSet* getTypeInfo(); /** Fetches the available columns in a catalog. * * The returned ResultSet has the following columns: * <ol> * <li><b>TABLE_CAT</b> - string - table catalog (can be NULL) * <li><b>TABLE_SCHEM</b> - string - table schema (can be NULL) * <li><b>TABLE_NAME</b> - string - table name * <li><b>COLUMN_NAME</b> - string - column name * <li><b>COLUMN_TYPE</b> - short - see Types * <li><b>TYPE_NAME</b> - string - the name of the type. Data source * dependent. * <li><b>COLUMN_SIZE</b> - int - column size. For character and date * types, this is the maximum number of characters. For numeric types * this is the precision. * <li><b>BUFFER_LENGTH</b> - not used * <li><b>DECIMAL_DIGITS</b> - int - the number of fractional digits. * <li><b>NUM_PREC_RADIX</b> - int - radix * <li><b>NULLABLE</b> - int - whether the column allows NULLs * <ul> * <li><code>columnNoNulls</code> - might not allow NULLs * <li><code>columnNullable</code> - definitely allows NULLs * <li><code>columnNullableUnknown</code> - nullability is unknown * </ul> * <li><b>REMARKS</b> - string - comments on the column (can be NULL) * <li><b>COLUMN_DEF</b> - string - default value (can be NULL) * <li><b>SQL_DATA_TYPE</b> - short - * <li><b>SQL_DATETIME_SUB</b> - short - * <li><b>CHAR_OCTET_LENGTH</b> - int - for character data types the maximum * number of bytes in the column * <li><b>ORDINAL_POSITION</b> - int - 1-based index in the table * <li><b>IS_NULLABLE</b> - string - <code>"NO"</code> means in no way * nullable, <code>"YES"</code> means possibly nullable. Empty string means * nobody knows. * </ol> */ ResultSet* getColumns(const ODBCXX_STRING& catalog, const ODBCXX_STRING& schemaPattern, const ODBCXX_STRING& tableNamePattern, const ODBCXX_STRING& columnNamePattern); /** Fetches the available tables in the data source. * The returned ResultSet has the following columns: * <ol> * <li><b>TABLE_CAT</b> - string - table catalog (can be NULL) * <li><b>TABLE_SCHEM</b> - string - table schema (can be NULL) * <li><b>TABLE_NAME</b> - string - table name * <li><b>TABLE_TYPE</b> - string - table type * <li><b>REMARKS</b> - string - comments on the table * </ol> * @param catalog the catalog name * @param schemaPattern schema name search pattern * @param tableNamePattern table name search pattern * @param types a list of table types. An empty list returns all table types. */ ResultSet* getTables(const ODBCXX_STRING& catalog, const ODBCXX_STRING& schemaPattern, const ODBCXX_STRING& tableNamePattern, const std::vector<ODBCXX_STRING>& types); /** Fetches a list of access rights for tables in a catalog. * * A table privilege applies to one or more columns in a table. * Do not assume that this privilege is valid for all columns. * * The returned ResultSet is ordered by * <code>TABLE_CAT</code>, <code>TABLE_SCHEM</code>, <code>TABLE_NAME</code> * and <code>PRIVILEGE</code>. It contains the following columns: * <ol> * <li><b>TABLE_CAT</b> - string - table catalog (can be <code>NULL</code>) * <li><b>TABLE_SCHEM</b> - string - table schema (can be <code>NULL</code>) * <li><b>TABLE_NAME</b> - string - table name * <li><b>GRANTOR</b> - string - grantor (can be <code>NULL</code>). If * <code>GRANTEE</code> owns the object, <code>GRANTOR</code> is * <code>"SYSTEM"</code>. * <li><b>GRANTEE</b> - string - grantee * <li><b>PRIVILEGE</b> - string - one of <code>"SELECT"</code>, * <code>"INSERT"</code>, <code>"UPDATE"</code>, <code>"DELETE"</code>, * <code>"REFERENCES"</code> or a data source specific value * <li><b>IS_GRANTABLE</b> - string - <code>"YES"</code> if <code>GRANTEE</code> * can grant this privilege to other users. <code>"NO"</code> if not. * <code>NULL</code> if unknown. * </ol> */ ResultSet* getTablePrivileges(const ODBCXX_STRING& catalog, const ODBCXX_STRING& schemaPattern, const ODBCXX_STRING& tableNamePattern); /** Fetches a list of access rights for a table's columns. * * The returned ResultSet is ordered by * <code>COLUMN_NAME</code> and <code>PRIVILEGE</code>. * It contains the following columns: * <ol> * <li><b>TABLE_CAT</b> - string - table catalog (can be <code>NULL</code>) * <li><b>TABLE_SCHEM</b> - string - table schema (can be <code>NULL</code>) * <li><b>TABLE_NAME</b> - string - table name * <li><b>COLUMN_NAME</b> - string - column name * <li><b>GRANTOR</b> - string - grantor (can be <code>NULL</code>). If * <code>GRANTEE</code> owns the object, <code>GRANTOR</code> is * <code>"SYSTEM"</code>. * <li><b>GRANTEE</b> - string - grantee * <li><b>PRIVILEGE</b> - string - one of <code>"SELECT"</code>, * <code>"INSERT"</code>, <code>"UPDATE"</code>, <code>"DELETE"</code>,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -