Package org.h2.table

Class InformationSchemaTable

  • All Implemented Interfaces:
    HasSQL

    public final class InformationSchemaTable
    extends MetaTable
    This class is responsible to build the INFORMATION_SCHEMA tables.
    • Constructor Detail

      • InformationSchemaTable

        public InformationSchemaTable​(Schema schema,
                                      int id,
                                      int type)
        Create a new metadata table.
        Parameters:
        schema - the schema
        id - the object id
        type - the meta table type
    • Method Detail

      • generateRows

        public java.util.ArrayList<Row> generateRows​(SessionLocal session,
                                                     SearchRow first,
                                                     SearchRow last)
        Description copied from class: MetaTable
        Generate the data for the given metadata table using the given first and last row filters.
        Specified by:
        generateRows in class MetaTable
        Parameters:
        session - the session
        first - the first row to return
        last - the last row to return
        Returns:
        the generated rows
      • informationSchemaCatalogName

        private void informationSchemaCatalogName​(SessionLocal session,
                                                  java.util.ArrayList<Row> rows,
                                                  java.lang.String catalog)
      • checkConstraints

        private void checkConstraints​(SessionLocal session,
                                      Value indexFrom,
                                      Value indexTo,
                                      java.util.ArrayList<Row> rows,
                                      java.lang.String catalog)
      • checkConstraints

        private void checkConstraints​(SessionLocal session,
                                      java.util.ArrayList<Row> rows,
                                      java.lang.String catalog,
                                      Constraint constraint,
                                      java.lang.String constraintName)
      • collations

        private void collations​(SessionLocal session,
                                java.util.ArrayList<Row> rows,
                                java.lang.String catalog)
      • collations

        private void collations​(SessionLocal session,
                                java.util.ArrayList<Row> rows,
                                java.lang.String catalog,
                                java.lang.String mainSchemaName,
                                java.lang.String name,
                                java.lang.String languageTag)
      • columns

        private void columns​(SessionLocal session,
                             Value indexFrom,
                             Value indexTo,
                             java.util.ArrayList<Row> rows,
                             java.lang.String catalog)
      • columns

        private void columns​(SessionLocal session,
                             java.util.ArrayList<Row> rows,
                             java.lang.String catalog,
                             java.lang.String mainSchemaName,
                             java.lang.String collation,
                             Table table,
                             java.lang.String tableName)
      • columns

        private void columns​(SessionLocal session,
                             java.util.ArrayList<Row> rows,
                             java.lang.String catalog,
                             java.lang.String mainSchemaName,
                             java.lang.String collation,
                             Table table,
                             java.lang.String tableName,
                             Column c,
                             int ordinalPosition)
      • columnPrivileges

        private void columnPrivileges​(SessionLocal session,
                                      Value indexFrom,
                                      Value indexTo,
                                      java.util.ArrayList<Row> rows,
                                      java.lang.String catalog)
      • constraintColumnUsage

        private void constraintColumnUsage​(SessionLocal session,
                                           Value indexFrom,
                                           Value indexTo,
                                           java.util.ArrayList<Row> rows,
                                           java.lang.String catalog)
      • constraintColumnUsage

        private void constraintColumnUsage​(SessionLocal session,
                                           Value indexFrom,
                                           Value indexTo,
                                           java.util.ArrayList<Row> rows,
                                           java.lang.String catalog,
                                           Constraint constraint)
      • domains

        private void domains​(SessionLocal session,
                             Value indexFrom,
                             Value indexTo,
                             java.util.ArrayList<Row> rows,
                             java.lang.String catalog)
      • domains

        private void domains​(SessionLocal session,
                             java.util.ArrayList<Row> rows,
                             java.lang.String catalog,
                             java.lang.String mainSchemaName,
                             java.lang.String collation,
                             Domain domain,
                             java.lang.String domainName)
      • domainConstraints

        private void domainConstraints​(SessionLocal session,
                                       Value indexFrom,
                                       Value indexTo,
                                       java.util.ArrayList<Row> rows,
                                       java.lang.String catalog)
      • domainConstraints

        private void domainConstraints​(SessionLocal session,
                                       java.util.ArrayList<Row> rows,
                                       java.lang.String catalog,
                                       ConstraintDomain constraint,
                                       Domain domain,
                                       java.lang.String domainName)
      • elementTypesFields

        private void elementTypesFields​(SessionLocal session,
                                        java.util.ArrayList<Row> rows,
                                        java.lang.String catalog,
                                        int type)
      • elementTypesFieldsForTable

        private void elementTypesFieldsForTable​(SessionLocal session,
                                                java.util.ArrayList<Row> rows,
                                                java.lang.String catalog,
                                                int type,
                                                java.lang.String mainSchemaName,
                                                java.lang.String collation,
                                                java.lang.String schemaName,
                                                Table table)
      • elementTypesFieldsRow

        private void elementTypesFieldsRow​(SessionLocal session,
                                           java.util.ArrayList<Row> rows,
                                           java.lang.String catalog,
                                           int type,
                                           java.lang.String mainSchemaName,
                                           java.lang.String collation,
                                           java.lang.String objectSchema,
                                           java.lang.String objectName,
                                           java.lang.String objectType,
                                           java.lang.String identifier,
                                           TypeInfo typeInfo)
      • elementTypes

        private void elementTypes​(SessionLocal session,
                                  java.util.ArrayList<Row> rows,
                                  java.lang.String catalog,
                                  java.lang.String mainSchemaName,
                                  java.lang.String collation,
                                  java.lang.String objectSchema,
                                  java.lang.String objectName,
                                  java.lang.String objectType,
                                  java.lang.String collectionIdentifier,
                                  java.lang.String dtdIdentifier,
                                  TypeInfo typeInfo)
      • fields

        private void fields​(SessionLocal session,
                            java.util.ArrayList<Row> rows,
                            java.lang.String catalog,
                            java.lang.String mainSchemaName,
                            java.lang.String collation,
                            java.lang.String objectSchema,
                            java.lang.String objectName,
                            java.lang.String objectType,
                            java.lang.String rowIdentifier,
                            java.lang.String fieldName,
                            int ordinalPosition,
                            java.lang.String dtdIdentifier,
                            TypeInfo typeInfo)
      • keyColumnUsage

        private void keyColumnUsage​(SessionLocal session,
                                    Value indexFrom,
                                    Value indexTo,
                                    java.util.ArrayList<Row> rows,
                                    java.lang.String catalog)
      • parameters

        private void parameters​(SessionLocal session,
                                java.util.ArrayList<Row> rows,
                                java.lang.String catalog)
      • parameters

        private void parameters​(SessionLocal session,
                                java.util.ArrayList<Row> rows,
                                java.lang.String catalog,
                                java.lang.String mainSchemaName,
                                java.lang.String collation,
                                java.lang.String schema,
                                java.lang.String specificName,
                                TypeInfo typeInfo,
                                int pos)
      • referentialConstraints

        private void referentialConstraints​(SessionLocal session,
                                            Value indexFrom,
                                            Value indexTo,
                                            java.util.ArrayList<Row> rows,
                                            java.lang.String catalog)
      • referentialConstraints

        private void referentialConstraints​(SessionLocal session,
                                            java.util.ArrayList<Row> rows,
                                            java.lang.String catalog,
                                            ConstraintReferential constraint,
                                            java.lang.String constraintName)
      • routines

        private void routines​(SessionLocal session,
                              java.util.ArrayList<Row> rows,
                              java.lang.String catalog)
      • routines

        private void routines​(SessionLocal session,
                              java.util.ArrayList<Row> rows,
                              java.lang.String catalog,
                              java.lang.String mainSchemaName,
                              java.lang.String collation,
                              java.lang.String schema,
                              java.lang.String name,
                              java.lang.String specificName,
                              java.lang.String routineType,
                              java.lang.String definition,
                              java.lang.String externalName,
                              TypeInfo typeInfo,
                              boolean deterministic,
                              java.lang.String remarks)
      • schemata

        private void schemata​(SessionLocal session,
                              java.util.ArrayList<Row> rows,
                              java.lang.String catalog)
      • sequences

        private void sequences​(SessionLocal session,
                               Value indexFrom,
                               Value indexTo,
                               java.util.ArrayList<Row> rows,
                               java.lang.String catalog)
      • sequences

        private void sequences​(SessionLocal session,
                               java.util.ArrayList<Row> rows,
                               java.lang.String catalog,
                               Sequence sequence,
                               java.lang.String sequenceName)
      • tables

        private void tables​(SessionLocal session,
                            Value indexFrom,
                            Value indexTo,
                            java.util.ArrayList<Row> rows,
                            java.lang.String catalog)
      • tables

        private void tables​(SessionLocal session,
                            java.util.ArrayList<Row> rows,
                            java.lang.String catalog,
                            Table table,
                            java.lang.String tableName)
      • tableConstraints

        private void tableConstraints​(SessionLocal session,
                                      Value indexFrom,
                                      Value indexTo,
                                      java.util.ArrayList<Row> rows,
                                      java.lang.String catalog)
      • tableConstraints

        private void tableConstraints​(SessionLocal session,
                                      java.util.ArrayList<Row> rows,
                                      java.lang.String catalog,
                                      Constraint constraint,
                                      Constraint.Type constraintType,
                                      Table table,
                                      java.lang.String tableName)
      • tablePrivileges

        private void tablePrivileges​(SessionLocal session,
                                     Value indexFrom,
                                     Value indexTo,
                                     java.util.ArrayList<Row> rows,
                                     java.lang.String catalog)
      • triggers

        private void triggers​(SessionLocal session,
                              Value indexFrom,
                              Value indexTo,
                              java.util.ArrayList<Row> rows,
                              java.lang.String catalog)
      • triggers

        private void triggers​(SessionLocal session,
                              java.util.ArrayList<Row> rows,
                              java.lang.String catalog,
                              TriggerObject trigger,
                              java.lang.String eventManipulation,
                              Table table,
                              java.lang.String tableName)
      • views

        private void views​(SessionLocal session,
                           Value indexFrom,
                           Value indexTo,
                           java.util.ArrayList<Row> rows,
                           java.lang.String catalog)
      • views

        private void views​(SessionLocal session,
                           java.util.ArrayList<Row> rows,
                           java.lang.String catalog,
                           Table table,
                           java.lang.String tableName)
      • constants

        private void constants​(SessionLocal session,
                               Value indexFrom,
                               Value indexTo,
                               java.util.ArrayList<Row> rows,
                               java.lang.String catalog)
      • constants

        private void constants​(SessionLocal session,
                               java.util.ArrayList<Row> rows,
                               java.lang.String catalog,
                               java.lang.String mainSchemaName,
                               java.lang.String collation,
                               Constant constant,
                               java.lang.String constantName)
      • enumValues

        private void enumValues​(SessionLocal session,
                                java.util.ArrayList<Row> rows,
                                java.lang.String catalog,
                                java.lang.String objectSchema,
                                java.lang.String objectName,
                                java.lang.String objectType,
                                java.lang.String enumIdentifier,
                                TypeInfo typeInfo)
      • indexes

        private void indexes​(SessionLocal session,
                             Value indexFrom,
                             Value indexTo,
                             java.util.ArrayList<Row> rows,
                             java.lang.String catalog,
                             boolean columns)
      • indexes

        private void indexes​(SessionLocal session,
                             java.util.ArrayList<Row> rows,
                             java.lang.String catalog,
                             boolean columns,
                             Table table,
                             java.lang.String tableName)
      • indexes

        private void indexes​(SessionLocal session,
                             java.util.ArrayList<Row> rows,
                             java.lang.String catalog,
                             Table table,
                             java.lang.String tableName,
                             Index index)
      • indexColumns

        private void indexColumns​(SessionLocal session,
                                  java.util.ArrayList<Row> rows,
                                  java.lang.String catalog,
                                  Table table,
                                  java.lang.String tableName,
                                  Index index)
      • inDoubt

        private void inDoubt​(SessionLocal session,
                             java.util.ArrayList<Row> rows)
      • locks

        private void locks​(SessionLocal session,
                           java.util.ArrayList<Row> rows)
      • queryStatistics

        private void queryStatistics​(SessionLocal session,
                                     java.util.ArrayList<Row> rows)
      • roles

        private void roles​(SessionLocal session,
                           java.util.ArrayList<Row> rows)
      • sessions

        private void sessions​(SessionLocal session,
                              java.util.ArrayList<Row> rows)
      • sessionState

        private void sessionState​(SessionLocal session,
                                  java.util.ArrayList<Row> rows)
      • settings

        private void settings​(SessionLocal session,
                              java.util.ArrayList<Row> rows)
      • synonyms

        private void synonyms​(SessionLocal session,
                              java.util.ArrayList<Row> rows,
                              java.lang.String catalog)
      • users

        private void users​(SessionLocal session,
                           java.util.ArrayList<Row> rows)
      • users

        private void users​(SessionLocal session,
                           java.util.ArrayList<Row> rows,
                           User user)
      • addConstraintColumnUsage

        private void addConstraintColumnUsage​(SessionLocal session,
                                              java.util.ArrayList<Row> rows,
                                              java.lang.String catalog,
                                              Constraint constraint,
                                              Column column)
      • addPrivileges

        private void addPrivileges​(SessionLocal session,
                                   java.util.ArrayList<Row> rows,
                                   DbObject grantee,
                                   java.lang.String catalog,
                                   Table table,
                                   java.lang.String column,
                                   int rightMask)
      • addPrivilege

        private void addPrivilege​(SessionLocal session,
                                  java.util.ArrayList<Row> rows,
                                  DbObject grantee,
                                  java.lang.String catalog,
                                  Table table,
                                  java.lang.String column,
                                  java.lang.String right)
      • getMaxDataModificationId

        public long getMaxDataModificationId()
        Description copied from class: Table
        Get the last data modification id.
        Specified by:
        getMaxDataModificationId in class Table
        Returns:
        the modification id
      • isView

        public boolean isView()
        Overrides:
        isView in class Table
      • getRowCount

        public long getRowCount​(SessionLocal session)
        Description copied from class: Table
        Get the row count for this table.
        Overrides:
        getRowCount in class MetaTable
        Parameters:
        session - the session
        Returns:
        the row count
      • getRowCountApproximation

        public long getRowCountApproximation​(SessionLocal session)
        Description copied from class: Table
        Get the approximated row count for this table.
        Overrides:
        getRowCountApproximation in class MetaTable
        Parameters:
        session - the session
        Returns:
        the approximated row count
      • getRowCount

        private long getRowCount​(SessionLocal session,
                                 boolean approximation)
      • canGetRowCount

        public boolean canGetRowCount​(SessionLocal session)
        Description copied from class: Table
        Check if the row count can be retrieved quickly.
        Overrides:
        canGetRowCount in class MetaTable
        Parameters:
        session - the session
        Returns:
        true if it can