feature/create-working-docker-images #68
@ -19,6 +19,8 @@ class MigrateDatabaseCommand extends Command
|
||||
{
|
||||
$db = \Container::$dbConnection;
|
||||
|
||||
$this->createBaseDb();
|
||||
|
||||
$db->startTransaction();
|
||||
|
||||
$success = [];
|
||||
@ -62,10 +64,8 @@ class MigrateDatabaseCommand extends Command
|
||||
return 0;
|
||||
}
|
||||
|
||||
private function readDir(string $type): array
|
||||
private function createBaseDb()
|
||||
{
|
||||
$done = [];
|
||||
|
||||
$migrationTableExists = \Container::$dbConnection->query('SELECT count(*)
|
||||
FROM information_schema.tables
|
||||
WHERE table_schema = \'' . $_ENV['DB_NAME'] . '\'
|
||||
@ -73,16 +73,25 @@ class MigrateDatabaseCommand extends Command
|
||||
->fetch(IResultSet::FETCH_NUM)[0];
|
||||
|
||||
if ($migrationTableExists != 0) {
|
||||
$select = new Select(\Container::$dbConnection, 'migrations');
|
||||
$select->columns(['migration']);
|
||||
$select->where('type', '=', $type);
|
||||
$select->orderBy('migration');
|
||||
return;
|
||||
}
|
||||
|
||||
$result = $select->execute();
|
||||
\Container::$dbConnection->multiQuery(file_get_contents(ROOT . '/database/rvr.sql'));
|
||||
}
|
||||
|
||||
while ($migration = $result->fetch(IResultSet::FETCH_ASSOC)) {
|
||||
$done[] = $migration['migration'];
|
||||
}
|
||||
private function readDir(string $type): array
|
||||
{
|
||||
$done = [];
|
||||
|
||||
$select = new Select(\Container::$dbConnection, 'migrations');
|
||||
$select->columns(['migration']);
|
||||
$select->where('type', '=', $type);
|
||||
$select->orderBy('migration');
|
||||
|
||||
$result = $select->execute();
|
||||
|
||||
while ($migration = $result->fetch(IResultSet::FETCH_ASSOC)) {
|
||||
$done[] = $migration['migration'];
|
||||
}
|
||||
|
||||
$path = ROOT . '/database/migrations/' . $type;
|
||||
|
Loading…
Reference in New Issue
Block a user