     # Return list of columns in a given table
     _get_columns: (table, cb) =>
         @_query
-            query  : "SELECT column_name FROM information_schema.columns WHERE table_name = $1::text"
-            params : [table]
-            cb     : (err, result) =>
+            query : "SELECT column_name FROM information_schema.columns"
+            where :
+                "table_name = $::text" : table
+            cb    : (err, result) =>
                 if err
                     cb(err)
                 else

        opts  = defaults opts,
            query  : required
            params : undefined
            where  : undefined   # If given, must be a map with keys clauses with $::TYPE  (not $1::TYPE!)
                                 # and values the corresponding params.  Also, WHERE must not be in the query already.
                                 # If where[cond] is undefined, then cond is completely **ignored**.
            cb     : undefined
        if opts.params? and not misc.is_array(opts.params)
            opts.cb("params must be an array")
            return
        if opts.where?
            if typeof(opts.where) != 'object'
                opts.cb("where must be an object")
                return
            if opts.params?
                opts.cb("params must not be given if where clause is given")
                return
            i = 1
            z = []

            (cb) =>
                dbg("checking whether or not trigger exists")
                @_query
                    query : "SELECT count(*) FROM pg_trigger WHERE tgname = '#{tgname}'"
                    cb    : (err, result) =>
                        if err
                            cb(err)
