getDbDriver()->getIterator("\n select \n 'drop ' || type || ' ' || name || ';' as command \n from sqlite_master \n where name <> 'sqlite_sequence' and name not like 'sqlite_autoindex_%'\n order by CASE type\n WHEN 'index' THEN 0\n WHEN 'trigger' THEN 1\n WHEN 'view' THEN 2\n ELSE 99\n END;\n "); foreach ($iterator as $row) { $this->getDbDriver()->execute($row->get('command')); } } /** * @throws \ByJG\DbMigration\Exception\DatabaseNotVersionedException * @throws \ByJG\DbMigration\Exception\OldVersionSchemaException */ public function createVersion() { $this->getDbDriver()->execute('CREATE TABLE IF NOT EXISTS ' . $this->getMigrationTable() . ' (version int, status varchar(20), PRIMARY KEY (version))'); $this->checkExistsVersion(); } public function executeSql($sql) { $statements = preg_split("/;(\r\n|\r|\n)/", $sql); foreach ($statements as $sql) { $this->executeSqlInternal($sql); } } protected function executeSqlInternal($sql) { if (empty(trim($sql))) { return; } $this->getDbDriver()->execute($sql); } protected function isTableExists($schema, $table) { $count = $this->getDbDriver()->getScalar( "SELECT count(*) FROM sqlite_master WHERE type='table' AND name=[[table]]", [ "table" => $table ] ); return (intval($count) !== 0); } public function isDatabaseVersioned() { return $this->isTableExists(null, $this->getMigrationTable()); } } __halt_compiler();----SIGNATURE:----PwCoP+w7Y4Gv9sVhWDWiVDukg0YeYP90P3EMfD1GaDHmcMHT5mENjkmZMeZP0/xX51WtriFRxN/4Y+uiCTreEUpKWz91ZN+sO9cOwn/DF7YrCqPllSAuX3NLZIW4MYiy8+AVc/XuRdkyuxCLQ/0CTDxy7bLTwC9tvrkKpDjZRF6OUaxsgJnCOcdzXxniqFd+yS6E7FKQcS2zOvenJy6yJ51PsoZpGJEbK45qTIYl2HO6rpTG5Rivprohymh4T2MEetLHV20hW+B/6hDftu8Dn/P+z8kG2ondqRmhPEo3gPmVY6VzqCLTfxsAJnpqi1QqrVUwzzuvpp81URjv+2X3loibNae5xYO1Lf1MncQH3u7NHsWbeM8xUh9KeRN+sL3sFNGjqpmZUnFlUUa1MhBjFHExUzTacHSurxpXHP/dmbIdKlE1PdSURyDJuargaDAsJa40xWyD+gUfKW1DMa0IlTVGt6/4qpeU5rgt8nrg0DN/8hQF7yGyXdRm2j7PKLLD/m1w05NLBSAxe8HOy9kptDGfjOUK9A+bHXGMOJSRG7LL4ViLP3RkzYiLQQyEWfG4f2jOZ96cULOq00r+BwLg3KL7ROFVT88wX2rR/7uiuAS8huzvH0Rv2cL2m1VqqFTiAJcofi5NgH6Ktb0GLSqwFchvviNrVc9aRLvMDvBLZfI=----ATTACHMENT:----Mzc5MDkwNDMwMDQzMzc2MyA5MTA3Nzk0OTM5NjY2MDQgNjIzODMwNDY1OTY1ODAyMA==