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 class
JdbcSchema.Table.Column.Usage
A usage of a column.
-
Field Summary
Fields Modifier and Type Field Description MondrianDef.Column
column
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
flushUsages()
flushes all star usage referencesint
getCharOctetLength()
For char types the maximum number of bytes in the column.int
getColumnSize()
Returns the size in bytes of the column in the database.Dialect.Datatype
getDatatype()
Return true if this column is numeric.int
getDecimalDigits()
Returns number of fractional digits.String
getName()
Returns the column's name in the database, not a symbolic name.int
getNumPrecRadix()
Returns Radix (typically either 10 or 2).JdbcSchema.Table
getTable()
Returns this column's table.int
getType()
Returns the columnIter java.sql.Type enun of the column.String
getTypeName()
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.boolean
hasUsage()
Return true if the column has at least one usage.boolean
hasUsage(JdbcSchema.UsageType columnType)
Return true if the column has at least one usage of the given column type.boolean
isNullable()
False means the column definitely does not allow NULL values.JdbcSchema.Table.Column.Usage
newUsage(JdbcSchema.UsageType usageType)
Create a new usage of a given column type.int
numberOfUsages()
How many usages does this column have.void
print(PrintWriter pw, String prefix)
String
toString()
-
-
-
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)
-
-