本文整理汇总了C++中Column::getName方法的典型用法代码示例。如果您正苦于以下问题:C++ Column::getName方法的具体用法?C++ Column::getName怎么用?C++ Column::getName使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Column
的用法示例。
在下文中一共展示了Column::getName方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: addObject
void Table::addObject(BaseObject *obj, int obj_idx)
{
ObjectType obj_type;
if(!obj)
throw Exception(ERR_ASG_NOT_ALOC_OBJECT,__PRETTY_FUNCTION__,__FILE__,__LINE__);
else
{
int idx;
obj_type=obj->getObjectType();
#ifdef DEMO_VERSION
#warning "DEMO VERSION: table children objects creation limit."
vector<TableObject *> *obj_list=(obj_type!=OBJ_TABLE ? getObjectList(obj_type) : nullptr);
if((obj_list && obj_list->size() >= GlobalAttributes::MAX_OBJECT_COUNT) ||
(obj_type==OBJ_TABLE && ancestor_tables.size() >= GlobalAttributes::MAX_OBJECT_COUNT))
throw Exception(trUtf8("In demonstration version tables can have only `%1' instances of each child object type or ancestor tables! You've reach this limit for the type: `%2'")
.arg(GlobalAttributes::MAX_OBJECT_COUNT)
.arg(BaseObject::getTypeName(obj_type)),
ERR_CUSTOM,__PRETTY_FUNCTION__,__FILE__,__LINE__);
#endif
try
{
//Raises an error if already exists a object with the same name and type
if(getObject(obj->getName(),obj_type,idx))
{
throw Exception(QString(Exception::getErrorMessage(ERR_ASG_DUPLIC_OBJECT))
.arg(obj->getName(true))
.arg(obj->getTypeName())
.arg(this->getName(true))
.arg(this->getTypeName()),
ERR_ASG_DUPLIC_OBJECT,__PRETTY_FUNCTION__,__FILE__,__LINE__);
}
//Raises an error if the user try to set the table as ancestor/copy of itself
else if((obj_type==OBJ_TABLE || obj_type==BASE_TABLE) && obj==this)
throw Exception(ERR_INV_INH_COPY_RELATIONSHIP,__PRETTY_FUNCTION__,__FILE__,__LINE__);
switch(obj_type)
{
case OBJ_COLUMN:
case OBJ_CONSTRAINT:
case OBJ_TRIGGER:
case OBJ_INDEX:
case OBJ_RULE:
TableObject *tab_obj;
vector<TableObject *> *obj_list;
Column *col;
tab_obj=dynamic_cast<TableObject *>(obj);
col=dynamic_cast<Column *>(tab_obj);
//Sets the object parent table if there isn't one
if(!tab_obj->getParentTable())
tab_obj->setParentTable(this);
//Raises an error if the parent table of the table object is different from table 'this'
else if(tab_obj->getParentTable()!=this)
throw Exception(ERR_ASG_OBJ_BELONGS_OTHER_TABLE,__PRETTY_FUNCTION__,__FILE__,__LINE__);
//Validates the object SQL code befor insert on table
obj->getCodeDefinition(SchemaParser::SQL_DEFINITION);
if(col && col->getType()==this)
{
throw Exception(Exception::getErrorMessage(ERR_INV_COLUMN_TABLE_TYPE)
.arg(col->getName())
.arg(this->getName()),
ERR_INV_COLUMN_TABLE_TYPE,__PRETTY_FUNCTION__,__FILE__,__LINE__);
}
else if(obj_type==OBJ_CONSTRAINT)
{
//Raises a error if the user try to add a second primary key on the table
if(dynamic_cast<Constraint *>(tab_obj)->getConstraintType()==ConstraintType::primary_key &&
this->getPrimaryKey())
throw Exception(ERR_ASG_EXISTING_PK_TABLE,__PRETTY_FUNCTION__,__FILE__,__LINE__);
}
else if(obj_type==OBJ_TRIGGER)
dynamic_cast<Trigger *>(tab_obj)->validateTrigger();
obj_list=getObjectList(obj_type);
//Adds the object to the table
if(obj_idx < 0 || obj_idx >= static_cast<int>(obj_list->size()))
obj_list->push_back(tab_obj);
else
{
//If there is a object index specified inserts the object at the position
if(obj_list->size() > 0)
obj_list->insert((obj_list->begin() + obj_idx), tab_obj);
else
obj_list->push_back(tab_obj);
}
if(obj_type==OBJ_COLUMN || obj_type==OBJ_CONSTRAINT)
{
updateAlterCmdsStatus();
//.........这里部分代码省略.........
示例2: Describable
ColumnDef::ColumnDef(const Column &column, ColumnType type)
: Describable(column.getName() + " " + ColumnTypeName(type))
{
}