Exemplo n.º 1
0
 protected function buildSimpleRelationSql(Doctrine_Relation $relation, $foreignAlias, $localAlias, $overrideJoin, $join)
 {
     $queryPart = $join . $this->_conn->quoteIdentifier($relation->getTable()->getTableName()) . ' ' . $this->_conn->quoteIdentifier($foreignAlias);
     if (!$overrideJoin) {
         $queryPart .= ' ON ' . $this->_conn->quoteIdentifier($localAlias . '.' . $relation->getLocalColumnName()) . ' = ' . $this->_conn->quoteIdentifier($foreignAlias . '.' . $relation->getForeignColumnName());
     }
     return $queryPart;
 }
Exemplo n.º 2
0
 /**
  * Get/generate a unique foreign key name for a relationship
  *
  * @param  Doctrine_Relation $relation  Relation object to generate the foreign key name for
  * @return string $fkName
  */
 public function generateUniqueRelationForeignKeyName(Doctrine_Relation $relation)
 {
     $parts = array($relation['localTable']->getTableName(), $relation->getLocalColumnName(), $relation['table']->getTableName(), $relation->getForeignColumnName());
     $key = implode('_', array_merge($parts, array($relation['onDelete']), array($relation['onUpdate'])));
     $format = $this->getAttribute(Doctrine_Core::ATTR_FKNAME_FORMAT);
     return $this->_generateUniqueName('foreign_keys', $parts, $key, $format, $this->getAttribute(Doctrine_Core::ATTR_MAX_IDENTIFIER_LENGTH));
 }
Exemplo n.º 3
0
 /**
  * Get/generate a unique foreign key name for a relationship
  *
  * @param  Doctrine_Relation $relation  Relation object to generate the foreign key name for
  * @return string $fkName
  */
 public function generateUniqueRelationForeignKeyName(Doctrine_Relation $relation)
 {
     $parts = array($relation['localTable']->getTableName(), $relation->getLocalColumnName(), $relation['table']->getTableName(), $relation->getForeignColumnName());
     $key = implode('_', array_merge($parts, array($relation['onDelete']), array($relation['onUpdate'])));
     $format = $this->getAttribute(Doctrine::ATTR_FKNAME_FORMAT);
     return $this->_generateUniqueName('foreign_keys', $parts, $key, $format, $this->properties['max_identifier_length']);
 }