   2. or a list of named param-value maps
   Return a lazy list of integers, each being the number of rows affected."
   [^String sql batch-args]
+  (sp/verify-writable)
   (let [args1        (first batch-args)
         is-map       (map? args1)
         is-seq       (or (coll? args1) (mu/array? args1))

  suitable if you want to retrieve generated column keys.
  See also: insert-give-id, insert-give-idmap"
  [^SimpleJdbcInsert sji row]
  ;; sji.withTableName("tableName")
  ;; .execute(/* Map<String, Object> */ row); // int
  (try

(defn insert-give-idmap
  "Insert row and return generated ID map (for multiple columns)."
  [^SimpleJdbcInsert sji row]
  (sp/verify-writable)
  ;; sji.withTableName("tableName")
  ;; .executeAndReturnKeyHolder(/* Map<String, Object> */ row)
  ;; .getKeys(); // Map<String, Object>
