Sean Corfield
50fbc5f8f1
Respect :gen-fn in execute-one
2019-04-18 00:28:23 -07:00
Sean Corfield
5019995feb
Move SQL sugar functions to next.jdbc.sql
...
Make SQL string builder functions private.
2019-04-17 23:56:44 -07:00
Sean Corfield
a17054b61a
Improve protocol documentation
2019-04-17 23:43:32 -07:00
Sean Corfield
b5eb5b880e
Consolidate the three use cases
...
* Remove `execute!` and `execute-one!` from `result-set`.
* Add `-execute-all` and `-execute-one` to the `Executable` protocol
instead.
* Remove `:row-fn` support.
* Allow a `PreparedStatement` to be `Connectable` so it can be used with
`datafy`/`nav`.
* Rewrite `RowBuilder` protocol and add `ResultSetBuilder` protocol; add
`as-arrays` as a builder.
2019-04-17 23:34:31 -07:00
Sean Corfield
788015909f
First cut at RowBuilder
...
Temporarily disables as-arrays
2019-04-10 23:59:19 -07:00
Sean Corfield
eefea54358
Merge branch 'master' of github.com:seancorfield/next-jdbc
2019-04-10 21:46:46 -07:00
Sean Corfield
d2f0afa973
Fix #9 by combining ->factory and create again
2019-04-10 21:46:38 -07:00
Sean Corfield
8eeee78ed9
Update CONTRIBUTING.md
2019-04-06 13:08:50 -07:00
Sean Corfield
e5e580846f
Document usage, intended use cases, and differences
...
Expand the README to provide more guidance and motivation.
2019-04-04 20:26:18 -07:00
Sean Corfield
9abf9f6380
Fix update count key to :next.jdbc/update-count
2019-04-04 20:25:20 -07:00
Sean Corfield
10929796ff
Merge branch 'master' of github.com:seancorfield/next-jdbc
2019-04-04 19:31:28 -07:00
Sean Corfield
571ad64a3f
Explain motivations in README
2019-04-04 18:52:38 -07:00
Sean Corfield
1fb1c44bcb
Merge pull request #8 from ikitommi/NoDestructure
...
Manually destructure options
2019-04-03 16:19:43 -07:00
Tommi Reiman
c7ebec1fa2
Manually destructure options
2019-04-02 22:37:53 +03:00
Sean Corfield
e85f627a00
Address #2 by solidifying row function API
...
Low-level `execute!` requires row function to be passed. High-level API
allows row function, else `datafiable-row`. Syntactic sugar still uses
`:row-fn`.
2019-04-02 00:41:39 -07:00
Sean Corfield
c2c9bcbba4
Address #1 by solidifying syntactic sugar functions
...
Cleans up how options are handled. Adds `query` alias for `execute!`,
clarifiies the syntactic sugar nature of the additional functions.
2019-04-01 23:57:12 -07:00
Sean Corfield
a76189d9c8
Fix #4 by adding transact
...
`with-transaction` now delegates to `transact` which in turn delegates
to `p/-transact`.
2019-04-01 23:43:10 -07:00
Sean Corfield
be9e4a6a55
Rename protocols
...
For internal consistency and also to avoid confusion with
`clojure.java.jdbc` protocols.
2019-04-01 23:32:24 -07:00
Sean Corfield
6d1a42a0a0
Fix #6 by adding IReadColumn and ISQLParameter protocols
...
The latter can be extended via metadata but the former cannot (since
only the latter is coming from Clojure).
2019-04-01 23:25:10 -07:00
Sean Corfield
4b81a42b4d
Allow Sourceable to be overridden via metadata
2019-04-01 23:22:59 -07:00
Sean Corfield
f217e86038
Address #2 by adding rs/as-arrays
2019-04-01 22:19:02 -07:00
Sean Corfield
81be787316
Improve docstrings throughout
2019-04-01 21:31:38 -07:00
Sean Corfield
28f735bafd
Add benchmarks against clojure.java.jdbc
2019-04-01 20:37:14 -07:00
Sean Corfield
6e08557d92
Add docstrings to everything
2019-03-31 23:17:12 -07:00
Sean Corfield
8646472e79
Flesh out more SQL generators
...
Add high-level insert!, insert-multi!, update!, delete!
Add more examples to tests.
2019-03-31 19:30:01 -07:00
Sean Corfield
561ccfc621
Add simple SQL generators
2019-03-31 18:22:04 -07:00
Sean Corfield
31cbecf411
Improve function naming in prepare ns
2019-03-31 17:30:10 -07:00
Sean Corfield
38017d720d
Move examples to tests for now
2019-03-31 17:29:40 -07:00
Sean Corfield
376856600e
Add quoted entity functions
2019-03-31 17:29:21 -07:00
Sean Corfield
ac95379bce
Reorganize into multiple namespaces
2019-03-31 16:54:34 -07:00
Sean Corfield
4d41faa8cd
Restore :identifiers functionality
2019-03-30 23:31:35 -07:00
Sean Corfield
2cb3c20122
Renaming/cleanup
2019-03-30 23:13:01 -07:00
Sean Corfield
451a5fbd3b
Handle generated keys
2019-03-30 23:12:37 -07:00
Sean Corfield
4741db1453
Fix column name when table name not known
2019-03-30 23:12:04 -07:00
Sean Corfield
69324ccbe6
in-transaction -> with-transaction
2019-03-30 23:11:37 -07:00
Sean Corfield
a44f59a468
Clean up Preparable; add Transactable
2019-03-30 20:36:53 -07:00
Sean Corfield
93eb286bd0
Optimize by removing destructuring
2019-01-26 02:05:25 -08:00
Sean Corfield
19ae37b3fe
Add options back to get-connection
...
So we can do read-only, non-auto-commit connections
2019-01-26 01:59:37 -08:00
Sean Corfield
8d9289bd14
Optimizations
...
Strip options from datasource.
Implement full prepared statement.
Lift options handling.
2019-01-26 01:35:31 -08:00
Sean Corfield
a1d9d869d6
Add raw Java benchmark
2019-01-26 00:27:15 -08:00
Sean Corfield
c1e8b351a2
Drop options; add query-one/command! conveniences
2019-01-26 00:21:03 -08:00
Sean Corfield
781a6d19e1
Perform base reduce on update counts
2019-01-10 23:25:29 -08:00
Sean Corfield
eaffa2fd74
Dispatch execute! on a protocol
...
Improves performance. Handles the connect-with-connection problem.
Clean up formatting.
2019-01-10 19:23:35 -08:00
Sean Corfield
362dd5aac0
Avoid with-open call on Connection
...
This doesn't improve performance as much as I expected
2019-01-10 18:47:48 -08:00
Sean Corfield
aed569af61
Bug fix for empty params
2019-01-10 18:46:24 -08:00
Sean Corfield
70c22add30
Fix a few calls
2019-01-10 18:33:12 -08:00
Sean Corfield
7d9a53127d
Add options to DataSource
2019-01-10 18:30:05 -08:00
Sean Corfield
73a7b2af10
Note: broken transaction machinery
...
After removing records and relying entirely on protocols, transaction handling is broken because you can't `assoc` into a non-map.
2019-01-10 18:24:55 -08:00
Sean Corfield
a5027066f9
Perf test query wrapper
2019-01-10 13:16:29 -08:00
Sean Corfield
01a13fe4fa
Implement and test assoc on a row
2019-01-10 13:16:14 -08:00