/** * Creates a triggers for this table. * * @param string $action The trigger action (INSERT, DELETE, or UPDATE). * @param string|null $skipVariable * @param string[] $additionSql The additional SQL statements to be included in triggers. */ private function createTableTrigger($action, $skipVariable, $additionSql) { $triggerName = $this->getTriggerName($action); $this->io->logVerbose('Creating trigger <dbo>%s.%s</dbo> on table <dbo>%s.%s</dbo>', $this->configTable->getSchemaName(), $triggerName, $this->configTable->getSchemaName(), $this->configTable->getTableName()); AuditDataLayer::createAuditTrigger($this->configTable->getSchemaName(), $this->auditSchemaName, $this->configTable->getTableName(), $triggerName, $action, $this->auditColumns, $this->dataTableColumnsDatabase, $skipVariable, $additionSql); }