Loading src/Driver/Oracle/TriggerManager.php +22 −1 Original line number Diff line number Diff line Loading @@ -72,7 +72,9 @@ class TriggerManager extends AbstractManager implements TriggerManagerInterface, $data[$r['name']]['definition'] .= $r['ddl']; } foreach ($data as $name => $d) { $data[$name]['definition'] = $this->purger($d['definition'], false); $def = $this->purger($d['definition'], false); $def = $this->purgeOwner($def, $d['name']); $data[$name]['definition'] = $def; } return $data; Loading @@ -80,6 +82,25 @@ class TriggerManager extends AbstractManager implements TriggerManagerInterface, function purgeOwner(string $ddl, string $name): string { $np = strpos($ddl, '."'.$name.'"'); if (false !== $np && 0 === strpos($ddl,'CREATE OR REPLACE TRIGGER "')){ $owner = substr($ddl, 27, $np-28); $ddl = str_replace('"'.$owner.'".', '', $ddl); } $np = strpos($ddl, '.'.$name); if (false !== $np && 0 === strpos($ddl,'CREATE OR REPLACE TRIGGER ')){ $owner = substr($ddl, 26, $np-26); $ddl = str_replace($owner.'.', '', $ddl); } return $ddl; } public function create(array $data): void { if ($this->sendEvent()->getReturn('no-exec')) return; Loading Loading
src/Driver/Oracle/TriggerManager.php +22 −1 Original line number Diff line number Diff line Loading @@ -72,7 +72,9 @@ class TriggerManager extends AbstractManager implements TriggerManagerInterface, $data[$r['name']]['definition'] .= $r['ddl']; } foreach ($data as $name => $d) { $data[$name]['definition'] = $this->purger($d['definition'], false); $def = $this->purger($d['definition'], false); $def = $this->purgeOwner($def, $d['name']); $data[$name]['definition'] = $def; } return $data; Loading @@ -80,6 +82,25 @@ class TriggerManager extends AbstractManager implements TriggerManagerInterface, function purgeOwner(string $ddl, string $name): string { $np = strpos($ddl, '."'.$name.'"'); if (false !== $np && 0 === strpos($ddl,'CREATE OR REPLACE TRIGGER "')){ $owner = substr($ddl, 27, $np-28); $ddl = str_replace('"'.$owner.'".', '', $ddl); } $np = strpos($ddl, '.'.$name); if (false !== $np && 0 === strpos($ddl,'CREATE OR REPLACE TRIGGER ')){ $owner = substr($ddl, 26, $np-26); $ddl = str_replace($owner.'.', '', $ddl); } return $ddl; } public function create(array $data): void { if ($this->sendEvent()->getReturn('no-exec')) return; Loading