improve migration class

This commit is contained in:
Jan-Niclas Loosen
2025-02-12 15:55:28 +01:00
parent 29703314a3
commit c4a7025978
5 changed files with 212 additions and 180 deletions

View File

@@ -1,6 +1,7 @@
<?php
namespace DatabaseHelper;
use DatabaseHelper\enums\Aggregation;
use DatabaseHelper\enums\Charset;
use DatabaseHelper\enums\Collation;
use DatabaseHelper\enums\Engine;
@@ -38,6 +39,12 @@ class Schema
return false;
}
public function countEntries(): int {
return Database::makeQuery($this)
->aggregate('*', 'count', Aggregation::COUNT)
->query();
}
public function columnType(string $col) {
return $this->columns[$col]['type'];
}
@@ -46,10 +53,6 @@ class Schema
return $this->columns['primary']['name'];
}
/**
* Creates a deep copy of this instance.
* @return Schema
*/
public function copy(): Schema {
$copy = new Schema($this->name);
$copy->columns = genericDeepCopy($this->columns);