Qore PgsqlSqlUtil Module Reference  1.6
PgsqlSqlUtil::PgsqlColumn Class Reference

represents a PostgreSQL-specific column More...

Inheritance diagram for PgsqlSqlUtil::PgsqlColumn:

Public Member Methods

 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 More...
 
string getDdlName (string name)
 returns the column name with quoting in case the column name is a reserved word More...
 
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 More...
 
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 More...
 

Public Attributes

int byte_size
 byte size of the column
 

Private Member Methods

 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 PgsqlSqlUtil::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
tthe SqlUtil::AbstractTable object to modify

◆ getDdlName()

string PgsqlSqlUtil::PgsqlColumn::getDdlName ( string  name)
virtual

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

Implements SqlUtil::AbstractDdlObject.

◆ getModifySqlImpl()

list PgsqlSqlUtil::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
tthe SqlUtil::AbstractTable object to modify
colthe new column definition
optcolumn 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 PgsqlSqlUtil::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
tthe SqlUtil::AbstractTable object to modify
new_namethe new name for the column
Returns
a string that can be used to rename the column