function SqlContentEntityStorageSchema::addSharedTableFieldIndex
Same name in other branches
- 9 core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorageSchema.php \Drupal\Core\Entity\Sql\SqlContentEntityStorageSchema::addSharedTableFieldIndex()
- 8.9.x core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorageSchema.php \Drupal\Core\Entity\Sql\SqlContentEntityStorageSchema::addSharedTableFieldIndex()
- 10 core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorageSchema.php \Drupal\Core\Entity\Sql\SqlContentEntityStorageSchema::addSharedTableFieldIndex()
Adds an index for the specified field to the given schema definition.
Parameters
\Drupal\Core\Field\FieldStorageDefinitionInterface $storage_definition: The storage definition of the field for which an index should be added.
array $schema: A reference to the schema array to be updated.
bool $not_null: (optional) Whether to also add a 'not null' constraint to the column being indexed. Doing so improves index performance. Defaults to FALSE, in case the field needs to support NULL values.
int $size: (optional) The index size. Defaults to no limit.
8 calls to SqlContentEntityStorageSchema::addSharedTableFieldIndex()
- BlockContentStorageSchema::getSharedTableFieldSchema in core/
modules/ block_content/ src/ BlockContentStorageSchema.php - Gets the schema for a single field definition.
- CommentStorageSchema::getSharedTableFieldSchema in core/
modules/ comment/ src/ CommentStorageSchema.php - Gets the schema for a single field definition.
- EntityTestUpdateStorageSchema::getSharedTableFieldSchema in core/
modules/ system/ tests/ modules/ entity_test_update/ src/ EntityTestUpdateStorageSchema.php - Gets the schema for a single field definition.
- FileStorageSchema::getSharedTableFieldSchema in core/
modules/ file/ src/ FileStorageSchema.php - Gets the schema for a single field definition.
- MenuLinkContentStorageSchema::getSharedTableFieldSchema in core/
modules/ menu_link_content/ src/ MenuLinkContentStorageSchema.php - Gets the schema for a single field definition.
File
-
core/
lib/ Drupal/ Core/ Entity/ Sql/ SqlContentEntityStorageSchema.php, line 2168
Class
- SqlContentEntityStorageSchema
- Defines a schema handler that supports revisionable, translatable entities.
Namespace
Drupal\Core\Entity\SqlCode
protected function addSharedTableFieldIndex(FieldStorageDefinitionInterface $storage_definition, &$schema, $not_null = FALSE, $size = NULL) {
$name = $storage_definition->getName();
$real_key = $this->getFieldSchemaIdentifierName($storage_definition->getTargetEntityTypeId(), $name);
$schema['indexes'][$real_key] = [
$size ? [
$name,
$size,
] : $name,
];
if ($not_null) {
$schema['fields'][$name]['not null'] = TRUE;
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.