Class Yiisoft\Yii\Debug\Api\Inspector\Database\Cycle\CycleSchemaProvider
| Inheritance | Yiisoft\Yii\Debug\Api\Inspector\Database\Cycle\CycleSchemaProvider |
|---|---|
| Implements | Yiisoft\Yii\Debug\Api\Inspector\Database\SchemaProviderInterface |
Public Methods
Method Details
| public mixed __construct ( \Cycle\Database\DatabaseProviderInterface $databaseProvider ) | ||
| $databaseProvider | \Cycle\Database\DatabaseProviderInterface | |
public function __construct(private DatabaseProviderInterface $databaseProvider)
{
}
| public array getTable ( string $tableName ) | ||
| $tableName | string | |
public function getTable(string $tableName): array
{
$database = $this->databaseProvider->database();
$schema = $database->table($tableName);
// TODO: add pagination
$records = $database->select()->from($tableName)->fetchAll();
return [
'table' => $schema->getName(),
'primaryKeys' => $schema->getPrimaryKeys(),
'columns' => $this->serializeCycleColumnsSchemas($schema->getColumns()),
'records' => $records,
];
}
| public array getTables ( ) |
public function getTables(): array
{
$database = $this->databaseProvider->database();
$tableSchemas = $database->getTables();
$tables = [];
foreach ($tableSchemas as $schema) {
$records = $database->select()->from($schema->getName())->count();
$tables[] = [
'table' => $schema->getName(),
'primaryKeys' => $schema->getPrimaryKeys(),
'columns' => $this->serializeCycleColumnsSchemas($schema->getColumns()),
'records' => $records,
];
}
return $tables;
}
Signup or Login in order to comment.