function DefaultTableMapping::getDedicatedDataTableName
Generates a table name for a field data table.
Parameters
\Drupal\Core\Field\FieldStorageDefinitionInterface $storage_definition: The field storage definition.
bool $is_deleted: (optional) Whether the table name holding the values of a deleted field should be returned.
Return value
string A string containing the generated name for the database table.
1 call to DefaultTableMapping::getDedicatedDataTableName()
- DefaultTableMapping::getFieldTableName in core/
lib/ Drupal/ Core/ Entity/ Sql/ DefaultTableMapping.php  - Gets the table name for a given column.
 
File
- 
              core/
lib/ Drupal/ Core/ Entity/ Sql/ DefaultTableMapping.php, line 566  
Class
- DefaultTableMapping
 - Defines a default table mapping class.
 
Namespace
Drupal\Core\Entity\SqlCode
public function getDedicatedDataTableName(FieldStorageDefinitionInterface $storage_definition, $is_deleted = FALSE) {
  if ($is_deleted) {
    // When a field is a deleted, the table is renamed to
    // {field_deleted_data_UNIQUE_STORAGE_ID}. To make sure we don't end up
    // with table names longer than 64 characters, we hash the unique storage
    // identifier and return the first 10 characters so we end up with a short
    // unique ID.
    return "field_deleted_data_" . substr(hash('sha256', $storage_definition->getUniqueStorageIdentifier()), 0, 10);
  }
  else {
    return $this->generateFieldTableName($storage_definition, FALSE);
  }
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.