Package mondrian.rolap.aggmatcher
Class JdbcSchema.Table.Column
- java.lang.Object
-
- mondrian.rolap.aggmatcher.JdbcSchema.Table.Column
-
- Enclosing class:
- JdbcSchema.Table
public class JdbcSchema.Table.Column extends Object
A column in a table.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description classJdbcSchema.Table.Column.UsageA usage of a column.
-
Field Summary
Fields Modifier and Type Field Description MondrianDef.Columncolumn
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidflushUsages()flushes all star usage referencesintgetCharOctetLength()For char types the maximum number of bytes in the column.intgetColumnSize()Returns the size in bytes of the column in the database.Dialect.DatatypegetDatatype()Return true if this column is numeric.intgetDecimalDigits()Returns number of fractional digits.StringgetName()Returns the column's name in the database, not a symbolic name.intgetNumPrecRadix()Returns Radix (typically either 10 or 2).JdbcSchema.TablegetTable()Returns this column's table.intgetType()Returns the columnIter java.sql.Type enun of the column.StringgetTypeName()Returns the columnIter java.sql.Type name.List<JdbcSchema.Table.Column.Usage>getUsages()Returns an iterator over all usages.Iterator<JdbcSchema.Table.Column.Usage>getUsages(JdbcSchema.UsageType usageType)Returns an iterator over all usages of the given column type.booleanhasUsage()Return true if the column has at least one usage.booleanhasUsage(JdbcSchema.UsageType columnType)Return true if the column has at least one usage of the given column type.booleanisNullable()False means the column definitely does not allow NULL values.JdbcSchema.Table.Column.UsagenewUsage(JdbcSchema.UsageType usageType)Create a new usage of a given column type.intnumberOfUsages()How many usages does this column have.voidprint(PrintWriter pw, String prefix)StringtoString()
-
-
-
Field Detail
-
column
public final MondrianDef.Column column
-
-
Method Detail
-
getName
public String getName()
Returns the column's name in the database, not a symbolic name.
-
getType
public int getType()
Returns the columnIter java.sql.Type enun of the column.
-
getTypeName
public String getTypeName()
Returns the columnIter java.sql.Type name.
-
getTable
public JdbcSchema.Table getTable()
Returns this column's table.
-
getDatatype
public Dialect.Datatype getDatatype()
Return true if this column is numeric.
-
getColumnSize
public int getColumnSize()
Returns the size in bytes of the column in the database.
-
getDecimalDigits
public int getDecimalDigits()
Returns number of fractional digits.
-
getNumPrecRadix
public int getNumPrecRadix()
Returns Radix (typically either 10 or 2).
-
getCharOctetLength
public int getCharOctetLength()
For char types the maximum number of bytes in the column.
-
isNullable
public boolean isNullable()
False means the column definitely does not allow NULL values.
-
numberOfUsages
public int numberOfUsages()
How many usages does this column have. A column has between 0 and N usages. It has no usages if usages is some administrative column. It has one usage if, for example, its the fact_count column or a level column (for a collapsed dimension aggregate). It might have 2 usages if its a foreign key that is also used as a measure. If its a column used in N measures, then usages will have N usages.
-
flushUsages
public void flushUsages()
flushes all star usage references
-
hasUsage
public boolean hasUsage()
Return true if the column has at least one usage.
-
hasUsage
public boolean hasUsage(JdbcSchema.UsageType columnType)
Return true if the column has at least one usage of the given column type.
-
getUsages
public List<JdbcSchema.Table.Column.Usage> getUsages()
Returns an iterator over all usages.
-
getUsages
public Iterator<JdbcSchema.Table.Column.Usage> getUsages(JdbcSchema.UsageType usageType)
Returns an iterator over all usages of the given column type.
-
newUsage
public JdbcSchema.Table.Column.Usage newUsage(JdbcSchema.UsageType usageType)
Create a new usage of a given column type.
-
print
public void print(PrintWriter pw, String prefix)
-
-