The Next.JDBC-friendly wrapper. Mimics most of the
next.jdbc functions and macros.
https://github.com/seancorfield/next-jdbc/blob/develop/src/next/jdbc.clj
The Next.JDBC-friendly wrapper. Mimics most of the `next.jdbc` functions and macros. https://github.com/seancorfield/next-jdbc/blob/develop/src/next/jdbc.clj
(active-tx? conn)True if the connection is a transaction at the moment. Even if the transaction is in an error state, the result will be true.
True if the connection is a transaction at the moment. Even if the transaction is in an error state, the result will be true.
(execute! source sql-vec)(execute! source sql-vec opt)Given a source and an SQL vector like [expr & params], execute a query and return a result.
The expr might be both a string representing a SQL query
or an instance of the PreparedStatement class.
Given a source and an SQL vector like [expr & params], execute a query and return a result. The `expr` might be both a string representing a SQL query or an instance of the `PreparedStatement` class.
(execute-batch! conn sql opts)Performs batch execution on the server side (TBD).
Performs batch execution on the server side (TBD).
(execute-one! source sql-vec)(execute-one! source sql-vec opt)Like execute! but returns only the first row.
Like `execute!` but returns only the first row.
(get-connection source)Return a connection object from a source which might be
a config map, a pool, or a connection. Not recommended
to use as there is a chance to leave the connection not
closed. Consider pg/on-connection instead.
Return a connection object from a source which might be a config map, a pool, or a connection. Not recommended to use as there is a chance to leave the connection not closed. Consider `pg/on-connection` instead.
(prepare source sql-vec)(prepare source sql-vec opt)Prepare and return an instance of the PreparedStatement class.
The sql-vec must be a vector like [sql & params]. The params,
although not requred, might be used for type hints, for example:
['select $1 as foo', 42]
Without passing 42, the parser won't know the desired type of $1 and it will be a default one which is text.
Once prepared, the statement might be used continuously with different parameters.
Don't share it with other connections.
Prepare and return an instance of the `PreparedStatement` class. The `sql-vec` must be a vector like `[sql & params]`. The `params`, although not requred, might be used for type hints, for example: ``` ['select $1 as foo', 42] ``` Without passing 42, the parser won't know the desired type of $1 and it will be a default one which is text. Once prepared, the statement might be used continuously with different parameters. Don't share it with other connections.
(transact source f)(transact source f opt)Having a source and a function that accepts a connection, do the following steps:
The opt params are similar to with-transaction options.
Having a source and a function that accepts a connection, do the following steps: - get a connection from the source; - start a new transaction in this connection; - run the function with the connection; - either commit or rollback the transaction depending on whether there was an exception; - if there was not, return the result of the function. The `opt` params are similar to `with-transaction` options.
(with-transaction [bind source opts] & body)Execute a block of code in a transaction. The connection
with the transaction opened is bound to the bind symbol.
The source might be a config map, a connection, or a pool.
The opts is a map that accepts next.jdbc parameters for
transaction, namely:
:isolation: one of these keywords:
:read-committed:read-uncommitted:repeatable-read:serializable:read-only: true / false;:rollback-only; true / false.Return the result of the body block.
Execute a block of code in a transaction. The connection with the transaction opened is bound to the `bind` symbol. The source might be a config map, a connection, or a pool. The `opts` is a map that accepts next.jdbc parameters for transaction, namely: - `:isolation`: one of these keywords: - `:read-committed` - `:read-uncommitted` - `:repeatable-read` - `:serializable` - `:read-only`: true / false; - `:rollback-only`; true / false. Return the result of the body block.
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |