OracleSqlUtil::OracleColumn Class Reference

represents an Oracle column More...

Inheritance diagram for OracleSqlUtil::OracleColumn:
[legend]

## Public Member Functions

bool | equalImpl (AbstractColumn c)
| returns True if the argument is equal to the current object, False if not
list< string > | getAddColumnSql (AbstractTable t)
| returns a list of sql strings that can be used to add the column to an existing table More...
string | getDdlName (string name)
| returns the column name with quoting in case the column name is a reserved word More...
list< string > | getModifySqlImpl (AbstractTable t, AbstractColumn col, *hash opt)
| returns a list of sql strings that can be used to modify the column to the new definition; if the column definitions are identical then an empty list is returned More...
string | getNativeTypeString ()
| returns the string describing the native type that can be used in SQL (for example to add the colunn to a table or when creating the table)
string | getRenameSql (AbstractTable t, string new_name)
| returns a string that can be used to rename the column More...

## Public Attributes

int | byte_size
| byte size of the column
bool | char_used
| the column uses character semantics

## Protected Member Functions

| constructor ()
| empty constructor for subclasses

## Detailed Description

represents an Oracle column

## Member Function Documentation

## getAddColumnSql()

list<string> OracleSqlUtil::OracleColumn::getAddColumnSql | ( | AbstractTable | t | ) |

returns a list of sql strings that can be used to add the column to an existing table

Example:
  list<string> l = col.getAddColumnSql(t);

Parameters

  t | the AbstractTable object to modify

## getDdlName()

string OracleSqlUtil::OracleColumn::getDdlName | ( | string | name | ) |

returns the column name with quoting in case the column name is a reserved word

the name returned here will be used when executing DDL

## getModifySqlImpl()

list<string> OracleSqlUtil::OracleColumn::getModifySqlImpl | ( | AbstractTable | t,
|  | AbstractColumn | col,
|  | *hash | opt
| ) |  |

returns a list of sql strings that can be used to modify the column to the new definition; if the column definitions are identical then an empty list is returned

Example:
  list<string> l = col.getModifySql(t, newcol);

The column names are assumed to be equal

Parameters

  t | the AbstractTable object to modify
  col | the new column definition
  opt | ignored

## getRenameSql()

string OracleSqlUtil::OracleColumn::getRenameSql | ( | AbstractTable | t,
|  | string | new_name
| ) |  |

returns a string that can be used to rename the column

Example:
  string str = col.getRenameSql(t, "new_name");

Parameters

  t | the AbstractTable object to modify
  new_name | the new name for the column

Returns
  a string that can be used to rename the column