Qore MysqlSqlUtil Module Reference  1.3.1
MysqlSqlUtil::MysqlColumn Class Reference

represents a MySQL-specific column More...

Inheritance diagram for MysqlSqlUtil::MysqlColumn:

Public Member Methods

softlist getAddColumnSql (AbstractTable t)
 returns a list of sql strings that can be used to add the column to an existing table More...
 
string getCreateSql (AbstractTable t)
 returns an sql string that can be used to add the column to a table
 
string getDdlName (string name)
 returns the column name with quoting in case the column name is a reserved word More...
 
softlist 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 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 MySQL-specific column

Member Function Documentation

◆ getAddColumnSql()

softlist MysqlSqlUtil::MysqlColumn::getAddColumnSql ( AbstractTable  t)

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

Example:
my list $l = $col.getAddColumnSql($t);
Parameters
tthe AbstractTable object to modify

◆ getDdlName()

string MysqlSqlUtil::MysqlColumn::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()

softlist MysqlSqlUtil::MysqlColumn::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:
my list $l = $col.getModifySql($t, $newcol);

The column names are assumed to be equal.

Parameters
tthe AbstractTable object to modify
colthe new column definition
optcolumn modification options (none are supported in 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 MysqlSqlUtil::MysqlColumn::getRenameSql ( AbstractTable  t,
string  new_name 
)

returns a string that can be used to rename the column

Example:
my string $str = $col.getRenameSql($t, "new_name");
Parameters
tthe AbstractTable object to modify
new_namethe new name for the column
Returns
a string that can be used to rename the column