Actually create the tables holy shit...
This commit is contained in:
parent
657c8e0b09
commit
e303a49fd3
1 changed files with 34 additions and 0 deletions
|
@ -4,6 +4,40 @@ use Index\Db\Migration\DbMigration;
|
||||||
|
|
||||||
final class PoolsSystemWithRules_20241225_123334 implements DbMigration {
|
final class PoolsSystemWithRules_20241225_123334 implements DbMigration {
|
||||||
public function migrate(DbConnection $conn): void {
|
public function migrate(DbConnection $conn): void {
|
||||||
|
// Create pools tables LOL HOW COULD I FORGET THIS WHAT
|
||||||
|
$conn->execute(<<<SQL
|
||||||
|
CREATE TABLE prm_pools (
|
||||||
|
pool_id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||||
|
pool_name VARCHAR(32) NOT NULL COLLATE 'ascii_general_ci',
|
||||||
|
pool_secret VARCHAR(255) NULL DEFAULT NULL COLLATE 'ascii_bin',
|
||||||
|
pool_created TIMESTAMP NOT NULL DEFAULT current_timestamp(),
|
||||||
|
pool_deprecated TIMESTAMP NULL DEFAULT NULL,
|
||||||
|
PRIMARY KEY (pool_id) USING BTREE,
|
||||||
|
UNIQUE INDEX prm_pools_name_unique (pool_name) USING BTREE,
|
||||||
|
INDEX prm_pools_created_index (pool_created) USING BTREE,
|
||||||
|
INDEX prm_pools_deprecated_index (pool_deprecated) USING BTREE
|
||||||
|
) ENGINE=InnoDB COLLATE='utf8mb4_bin'
|
||||||
|
SQL);
|
||||||
|
|
||||||
|
$conn->execute(<<<SQL
|
||||||
|
CREATE TABLE prm_pools_rules (
|
||||||
|
rule_id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||||
|
pool_id INT(10) UNSIGNED NOT NULL,
|
||||||
|
rule_type VARCHAR(64) NOT NULL COLLATE 'ascii_general_ci',
|
||||||
|
rule_params LONGTEXT NOT NULL DEFAULT '{}' COLLATE 'utf8mb4_bin',
|
||||||
|
PRIMARY KEY (rule_id) USING BTREE,
|
||||||
|
INDEX prm_pools_rules_pool_foreign (pool_id) USING BTREE,
|
||||||
|
INDEX prm_pools_rules_type_index (rule_type) USING BTREE,
|
||||||
|
CONSTRAINT prm_pools_rules_pool_foreign
|
||||||
|
FOREIGN KEY (pool_id)
|
||||||
|
REFERENCES prm_pools (pool_id)
|
||||||
|
ON UPDATE CASCADE
|
||||||
|
ON DELETE CASCADE,
|
||||||
|
CONSTRAINT prm_pools_rules_params_ensure_object
|
||||||
|
CHECK (json_type(rule_params) = 'OBJECT')
|
||||||
|
) ENGINE=InnoDB COLLATE='utf8mb4_bin'
|
||||||
|
SQL);
|
||||||
|
|
||||||
// Set NULL access timestamps to the created timestamp
|
// Set NULL access timestamps to the created timestamp
|
||||||
$conn->execute('UPDATE prm_uploads SET upload_accessed = upload_created WHERE upload_accessed IS NULL');
|
$conn->execute('UPDATE prm_uploads SET upload_accessed = upload_created WHERE upload_accessed IS NULL');
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue