Move schema to json

This commit is contained in:
Dennis Eichhorn 2018-12-22 23:19:20 +01:00
parent 91200f10f0
commit e8bd9c131e
2 changed files with 21 additions and 29 deletions

21
Admin/Install/db.json Normal file
View File

@ -0,0 +1,21 @@
{
"draw_image": {
"name": "draw_image",
"fields": {
"draw_image_id": {
"name": "draw_image_id",
"type": "INT",
"null": false,
"primary": true,
"autoincrement": true
},
"draw_image_media": {
"name": "draw_image_media",
"type": "INT",
"null": false,
"foreignTable": "media",
"foreignKey": "media_id"
}
}
}
}

View File

@ -14,9 +14,6 @@ declare(strict_types=1);
namespace Modules\Draw\Admin;
use phpOMS\DataStorage\Database\DatabasePool;
use phpOMS\DataStorage\Database\DatabaseType;
use phpOMS\Module\InfoManager;
use phpOMS\Module\InstallerAbstract;
/**
@ -29,30 +26,4 @@ use phpOMS\Module\InstallerAbstract;
*/
class Installer extends InstallerAbstract
{
/**
* {@inheritdoc}
*/
public static function install(DatabasePool $dbPool, InfoManager $info) : void
{
parent::install($dbPool, $info);
switch ($dbPool->get()->getType()) {
case DatabaseType::MYSQL:
$dbPool->get()->con->prepare(
'CREATE TABLE if NOT EXISTS `' . $dbPool->get()->prefix . 'draw_image` (
`draw_image_id` int(11) NOT NULL AUTO_INCREMENT,
`draw_image_media` int(11) NOT NULL,
PRIMARY KEY (`draw_image_id`),
KEY `draw_image_media` (`draw_image_media`)
)ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;'
)->execute();
$dbPool->get()->con->prepare(
'ALTER TABLE `' . $dbPool->get()->prefix . 'draw_image`
ADD CONSTRAINT `' . $dbPool->get()->prefix . 'draw_image_ibfk_1` FOREIGN KEY (`draw_image_media`) REFERENCES `' . $dbPool->get()->prefix . 'media` (`media_id`);'
)->execute();
break;
}
}
}