‪TYPO3CMS  10.4
TYPO3\CMS\Core\Database\Schema\Parser\TableBuilder Class Reference

Public Member Functions

 __construct (AbstractPlatform $platform=null)
 
Doctrine DBAL Schema Table create (CreateTableStatement $tableStatement)
 

Protected Member Functions

Doctrine DBAL Schema Column addColumn (CreateColumnDefinitionItem $item)
 
Doctrine DBAL Schema Index addIndex (CreateIndexDefinitionItem $item)
 
 addForeignKey (CreateForeignKeyDefinitionItem $item)
 
 addForeignKeyConstraint (array $localColumnNames, ReferenceDefinition $referenceDefinition, string $indexName=null)
 
string getDoctrineColumnTypeName (AbstractDataType $dataType)
 
array buildTableOptions (array $tableOptions)
 

Protected Attributes

Table $table
 
AbstractPlatform $platform
 

Detailed Description

Converts a CreateTableStatement syntax node into a Doctrine Table object that represents the table defined in the original SQL statement.

Definition at line 73 of file TableBuilder.php.

Constructor & Destructor Documentation

◆ __construct()

TYPO3\CMS\Core\Database\Schema\Parser\TableBuilder::__construct ( AbstractPlatform  $platform = null)

TableBuilder constructor.

Parameters
\Doctrine\DBAL\Platforms\AbstractPlatform$platform
Exceptions

Definition at line 90 of file TableBuilder.php.

References TYPO3\CMS\Core\Database\Schema\Parser\TableBuilder\$platform.

Member Function Documentation

◆ addColumn()

Doctrine DBAL Schema Column TYPO3\CMS\Core\Database\Schema\Parser\TableBuilder::addColumn ( CreateColumnDefinitionItem  $item)
protected
Parameters
\TYPO3\CMS\Core\Database\Schema\Parser\AST\CreateColumnDefinitionItem$item
Returns
‪\Doctrine\DBAL\Schema\Column
Exceptions

Definition at line 154 of file TableBuilder.php.

References TYPO3\CMS\Core\Database\Schema\Parser\TableBuilder\addForeignKeyConstraint().

Referenced by TYPO3\CMS\Core\Database\Schema\Parser\TableBuilder\create().

◆ addForeignKey()

TYPO3\CMS\Core\Database\Schema\Parser\TableBuilder::addForeignKey ( CreateForeignKeyDefinitionItem  $item)
protected

Prepare an explicit foreign key definition item to be added to the table being built.

Parameters
\TYPO3\CMS\Core\Database\Schema\Parser\AST\CreateForeignKeyDefinitionItem$item

Definition at line 276 of file TableBuilder.php.

References TYPO3\CMS\Core\Database\Schema\Parser\TableBuilder\addForeignKeyConstraint().

Referenced by TYPO3\CMS\Core\Database\Schema\Parser\TableBuilder\create().

◆ addForeignKeyConstraint()

TYPO3\CMS\Core\Database\Schema\Parser\TableBuilder::addForeignKeyConstraint ( array  $localColumnNames,
ReferenceDefinition  $referenceDefinition,
string  $indexName = null 
)
protected

Add a foreign key constraint to the table being built.

Parameters
string[]$localColumnNames
\TYPO3\CMS\Core\Database\Schema\Parser\AST\ReferenceDefinition$referenceDefinition
string$indexName

Definition at line 295 of file TableBuilder.php.

Referenced by TYPO3\CMS\Core\Database\Schema\Parser\TableBuilder\addColumn(), and TYPO3\CMS\Core\Database\Schema\Parser\TableBuilder\addForeignKey().

◆ addIndex()

Doctrine DBAL Schema Index TYPO3\CMS\Core\Database\Schema\Parser\TableBuilder::addIndex ( CreateIndexDefinitionItem  $item)
protected
Parameters
\TYPO3\CMS\Core\Database\Schema\Parser\AST\CreateIndexDefinitionItem$item
Returns
‪\Doctrine\DBAL\Schema\Index
Exceptions

Definition at line 225 of file TableBuilder.php.

Referenced by TYPO3\CMS\Core\Database\Schema\Parser\TableBuilder\create().

◆ buildTableOptions()

array TYPO3\CMS\Core\Database\Schema\Parser\TableBuilder::buildTableOptions ( array  $tableOptions)
protected

Build the table specific options as far as they are supported by Doctrine.

Parameters
array$tableOptions
Returns
‪array

Definition at line 421 of file TableBuilder.php.

◆ create()

Doctrine DBAL Schema Table TYPO3\CMS\Core\Database\Schema\Parser\TableBuilder::create ( CreateTableStatement  $tableStatement)

Create a Doctrine Table object based on the parsed MySQL SQL command.

Parameters
\TYPO3\CMS\Core\Database\Schema\Parser\AST\CreateTableStatement$tableStatement
Returns
‪\Doctrine\DBAL\Schema\Table
Exceptions

Definition at line 114 of file TableBuilder.php.

References TYPO3\CMS\Core\Database\Schema\Parser\TableBuilder\$table, TYPO3\CMS\Core\Database\Schema\Parser\TableBuilder\addColumn(), TYPO3\CMS\Core\Database\Schema\Parser\TableBuilder\addForeignKey(), and TYPO3\CMS\Core\Database\Schema\Parser\TableBuilder\addIndex().

◆ getDoctrineColumnTypeName()

string TYPO3\CMS\Core\Database\Schema\Parser\TableBuilder::getDoctrineColumnTypeName ( AbstractDataType  $dataType)
protected
Parameters
\TYPO3\CMS\Core\Database\Schema\Parser\AST\DataType\AbstractDataType$dataType
Returns
‪string
Exceptions

Definition at line 327 of file TableBuilder.php.

References TYPO3\CMS\Core\Database\Schema\Types\EnumType\TYPE, and TYPO3\CMS\Core\Database\Schema\Types\SetType\TYPE.

Member Data Documentation

◆ $platform

AbstractPlatform TYPO3\CMS\Core\Database\Schema\Parser\TableBuilder::$platform
protected

◆ $table

Table TYPO3\CMS\Core\Database\Schema\Parser\TableBuilder::$table
protected