Structure
class Structure implements IStructure
Provides database structure metadata with caching.
Properties
protected | $connection | ||
protected | $cache | ||
protected | $structure | ||
protected | $isRebuilt |
Methods
Returns tables list.
Returns table columns list.
No description
Returns autoincrement primary key name.
Returns table primary key sequence.
Returns hasMany reference.
Returns belongsTo reference.
Rebuilds structure cache.
Returns true if database cached structure has been rebuilt.
No description
Loads complete structure from database.
No description
No description
Returns normalized table name.
Details
at line 28
__construct(Connection $connection, Storage $cacheStorage)
No description
at line 35
array
getTables()
Returns tables list.
at line 42
array
getColumns(string $table)
Returns table columns list.
at line 54
string|array|null
getPrimaryKey(string $table)
No description
at line 62
string|null
getPrimaryAutoincrementKey(string $table)
Returns autoincrement primary key name.
at line 92
string|null
getPrimaryKeySequence(string $table)
Returns table primary key sequence.
at line 117
array|null
getHasManyReference(string $table)
Returns hasMany reference.
If a targetTable is not provided, returns references for all tables.
at line 125
array|null
getBelongsToReference(string $table)
Returns belongsTo reference.
If a column is not provided, returns references for all columns.
at line 136
void
rebuild()
Rebuilds structure cache.
at line 143
bool
isRebuilt()
Returns true if database cached structure has been rebuilt.
at line 149
protected void
needStructure()
No description
at line 162
protected array
loadStructure()
Loads complete structure from database.
at line 197
protected string|array|null
analyzePrimaryKey(array $columns)
No description
at line 216
protected void
analyzeForeignKeys(array $structure, string $table)
No description
at line 244
protected string
resolveFQTableName(string $table)
Returns normalized table name.