示例#1
0
QString View::getCodeDefinition(unsigned def_type)
{
	QString code_def=getCachedCode(def_type, false);
	if(!code_def.isEmpty()) return(code_def);

	attributes[ParsersAttributes::CTE_EXPRESSION]=cte_expression;
  attributes[ParsersAttributes::MATERIALIZED]=(materialized ? ParsersAttributes::_TRUE_ : QString());
  attributes[ParsersAttributes::RECURSIVE]=(recursive ? ParsersAttributes::_TRUE_ : QString());
  attributes[ParsersAttributes::WITH_NO_DATA]=(with_no_data ? ParsersAttributes::_TRUE_ : QString());
  attributes[ParsersAttributes::COLUMNS]=QString();
  attributes[ParsersAttributes::TAG]=QString();

  setSQLObjectAttribute();

  if(recursive)
    attributes[ParsersAttributes::COLUMNS]=getColumnsList().join(',');

  if(tag && def_type==SchemaParser::XML_DEFINITION)
   attributes[ParsersAttributes::TAG]=tag->getCodeDefinition(def_type, true);

	if(def_type==SchemaParser::SQL_DEFINITION)
		setDeclarationAttribute();
	else
	{
		setPositionAttribute();
		setReferencesAttribute();
	}

  return(BaseObject::__getCodeDefinition(def_type));
}
示例#2
0
QString Table::getCodeDefinition(unsigned def_type)
{
	QString code_def=getCachedCode(def_type, false);
	if(!code_def.isEmpty()) return(code_def);

	attributes[ParsersAttributes::OIDS]=(with_oid ? ParsersAttributes::_TRUE_ : QString());
	attributes[ParsersAttributes::GEN_ALTER_CMDS]=(gen_alter_cmds ? ParsersAttributes::_TRUE_ : QString());
	attributes[ParsersAttributes::UNLOGGED]=(unlogged ? ParsersAttributes::_TRUE_ : QString());
	attributes[ParsersAttributes::COPY_TABLE]=QString();
	attributes[ParsersAttributes::ANCESTOR_TABLE]=QString();
  attributes[ParsersAttributes::TAG]=QString();

	if(def_type==SchemaParser::SQL_DEFINITION && copy_table)
		attributes[ParsersAttributes::COPY_TABLE]=copy_table->getName(true) + copy_op.getSQLDefinition();

  if(tag && def_type==SchemaParser::XML_DEFINITION)
   attributes[ParsersAttributes::TAG]=tag->getCodeDefinition(def_type, true);

	(copy_table ? copy_table->getName(true) : QString());

	setColumnsAttribute(def_type);
	setConstraintsAttribute(def_type);
	setAncestorTableAttribute();

	if(def_type==SchemaParser::XML_DEFINITION)
  {
    setRelObjectsIndexesAttribute();
		setPositionAttribute();
  }

	return(BaseObject::__getCodeDefinition(def_type));
}
示例#3
0
文件: view.cpp 项目: Tbxhs/pgmodeler
QString View::getCodeDefinition(unsigned def_type)
{
	attributes[ParsersAttributes::CTE_EXPRESSION]=cte_expression;

	if(def_type==SchemaParser::SQL_DEFINITION)
		setDeclarationAttribute();
	else
	{
		setPositionAttribute();
		setReferencesAttribute();
	}

	return(BaseObject::__getCodeDefinition(def_type));
}
示例#4
0
QString Textbox::getCodeDefinition(void)
{
	setPositionAttribute();

	if(text_attributes[ITALIC_TXT])
		attributes[ParsersAttributes::ITALIC]="1";

	if(text_attributes[BOLD_TXT])
		attributes[ParsersAttributes::BOLD]="1";

	if(text_attributes[UNDERLINE_TXT])
		attributes[ParsersAttributes::UNDERLINE]="1";

	if(text_color.name()!="#000000")
		attributes[ParsersAttributes::COLOR]=text_color.name();

	return(this->BaseObject::__getCodeDefinition(SchemaParser::XML_DEFINITION));
}
示例#5
0
QString Table::getCodeDefinition(unsigned def_type)
{
	attributes[ParsersAttributes::OIDS]=(with_oid ? "1" : "");
	attributes[ParsersAttributes::COPY_TABLE]="";

	if(def_type==SchemaParser::SQL_DEFINITION && copy_table)
		attributes[ParsersAttributes::COPY_TABLE]=copy_table->getName(true) + copy_op.getSQLDefinition();

	(copy_table ? copy_table->getName(true) : "");

	setColumnsAttribute(def_type);
	setConstraintsAttribute(def_type);
	setTriggersAttribute(def_type);
	setIndexesAttribute(def_type);
	setRulesAttribute(def_type);

	if(def_type==SchemaParser::XML_DEFINITION)
		setPositionAttribute();

	return(BaseObject::__getCodeDefinition(def_type));
}
示例#6
0
QString View::getCodeDefinition(unsigned def_type)
{
	unsigned count, i;

	attributes[ParsersAttributes::CTE_EXPRESSION]=cte_expression;
  attributes[ParsersAttributes::MATERIALIZED]=(materialized ? "1" : "");
  attributes[ParsersAttributes::RECURSIVE]=(recursive ? "1" : "");
  attributes[ParsersAttributes::WITH_NO_DATA]=(with_no_data ? "1" : "");
  attributes[ParsersAttributes::COLUMNS]="";
  attributes[ParsersAttributes::TAG]="";

  if(materialized)
    attributes[ParsersAttributes::SQL_OBJECT]="MATERIALIZED " + BaseObject::getSQLName(OBJ_VIEW);

  if(recursive)
    attributes[ParsersAttributes::COLUMNS]=getColumnsList().join(",");

  if(tag && def_type==SchemaParser::XML_DEFINITION)
   attributes[ParsersAttributes::TAG]=tag->getCodeDefinition(def_type, true);

	if(def_type==SchemaParser::SQL_DEFINITION)
		setDeclarationAttribute();
	else
	{
		setPositionAttribute();
		setReferencesAttribute();
	}

	count=triggers.size();
	for(i=0; i < count; i++)
		attributes[ParsersAttributes::TRIGGERS]+=triggers[i]->getCodeDefinition(def_type);

	count=rules.size();
	for(i=0; i < count; i++)
		attributes[ParsersAttributes::RULES]+=rules[i]->getCodeDefinition(def_type);


	return(BaseObject::__getCodeDefinition(def_type));
}