Loading...
Searching...
No Matches
PgsqlSqlUtilBase::PgsqlColumn Class Reference

represents a PostgreSQL-specific column More...

Inheritance diagram for PgsqlSqlUtilBase::PgsqlColumn:
[legend]

## Public Member Functions

| constructor (string n, string nt, *string qt, int sz, bool nul, *string dv, *string cm, softint bs, *int scale)
| creates the column from the supplied arguments
list | getAddColumnSql (AbstractTable t)
| returns a list of sql strings that can be used to add the column to an existing table
string | getDdlName (string name)
| returns the column name with quoting in case the column name is a reserved word
list | 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
string | getNativeTypeString ()
| returns a string giving the native type of the column
string | getRenameSql (AbstractTable t, string new_name)
| returns a string that can be used to rename the column

## Public Attributes

int | byte_size
| byte size of the column

## Protected Member Functions

| constructor ()
| empty constructor for subclasses
bool | equalImpl (AbstractColumn c)
| returns True if the argument is equal to the current object, False if not

## Detailed Description

represents a PostgreSQL-specific column

## Member Function Documentation

## getAddColumnSql()

list PgsqlSqlUtilBase::PgsqlColumn::getAddColumnSql | ( | AbstractTable | t | ) |

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

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

Parameters

  t | the SqlUtil::AbstractTable object to modify

## getDdlName()

string PgsqlSqlUtilBase::PgsqlColumn::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 PgsqlSqlUtilBase::PgsqlColumn::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 l = col.getModifySql(t, newcol);

The column names are assumed to be equal.

Parameters

  t | the SqlUtil::AbstractTable object to modify
  col | the new column definition
  opt | column modification options (none are supported by this class)

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

## getRenameSql()

string PgsqlSqlUtilBase::PgsqlColumn::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 SqlUtil::AbstractTable object to modify
  new_name | the new name for the column

Returns
  a string that can be used to rename the column