private function query(bool $autoexec = false)
    {
        // Reset PDO statement
        $this->stmt = null;
        
        $this->stmt = $this->dbh->prepare(str_replace('{db_prefix}', $this->prefix, $this->sql));
        
        if (! empty($this->params)) {
            foreach ($this->params as $parameter => $value) {
                $this->stmt->bindValue($parameter, $value);
            }
        }
        
        if ($autoexec === true) {
            return $this->execute();
        } else {
            return $this->stmt;
        }
    }