Dibi\Drivers\FirebirdDriver::getTriggersMeta PHP Method

getTriggersMeta() public method

(Only if user has permissions on ALTER TABLE, INSERT/UPDATE/DELETE record in table)
public getTriggersMeta ( $table = NULL ) : array
return array
    public function getTriggersMeta($table = NULL)
    {
        $res = $this->query("\n\t\t\tSELECT TRIM(RDB\$TRIGGER_NAME) AS TRIGGER_NAME,\n\t\t\t\tTRIM(RDB\$RELATION_NAME) AS TABLE_NAME,\n\t\t\t\tCASE RDB\$TRIGGER_TYPE\n\t\t\t\t\tWHEN 1 THEN 'BEFORE'\n\t\t\t\t\tWHEN 2 THEN 'AFTER'\n\t\t\t\t\tWHEN 3 THEN 'BEFORE'\n\t\t\t\t\tWHEN 4 THEN 'AFTER'\n\t\t\t\t\tWHEN 5 THEN 'BEFORE'\n\t\t\t\t\tWHEN 6 THEN 'AFTER'\n\t\t\t\tEND AS TRIGGER_TYPE,\n\t\t\t\tCASE RDB\$TRIGGER_TYPE\n\t\t\t\t\tWHEN 1 THEN 'INSERT'\n\t\t\t\t\tWHEN 2 THEN 'INSERT'\n\t\t\t\t\tWHEN 3 THEN 'UPDATE'\n\t\t\t\t\tWHEN 4 THEN 'UPDATE'\n\t\t\t\t\tWHEN 5 THEN 'DELETE'\n\t\t\t\t\tWHEN 6 THEN 'DELETE'\n\t\t\t\tEND AS TRIGGER_EVENT,\n\t\t\t\tCASE RDB\$TRIGGER_INACTIVE\n\t\t\t\t\tWHEN 1 THEN 'FALSE' ELSE 'TRUE'\n\t\t\t\tEND AS TRIGGER_ENABLED\n\t\t\tFROM RDB\$TRIGGERS\n\t\t\tWHERE RDB\$SYSTEM_FLAG = 0" . ($table === NULL ? ';' : " AND RDB\$RELATION_NAME = UPPER('{$table}');"));
        $triggers = [];
        while ($row = $res->fetch(TRUE)) {
            $triggers[$row['TRIGGER_NAME']] = ['name' => $row['TRIGGER_NAME'], 'table' => $row['TABLE_NAME'], 'type' => trim($row['TRIGGER_TYPE']), 'event' => trim($row['TRIGGER_EVENT']), 'enabled' => trim($row['TRIGGER_ENABLED']) === 'TRUE'];
        }
        return $triggers;
    }