annotate release.txt @ 444:bc39810b3faa v3.0

Update ChangeLog release.txt for creating new MonetDB JDBC Driver release.
author Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
date Wed, 17 Feb 2021 20:22:01 +0100 (2021-02-17)
parents e029aa705fdb
children 0e30bc245838
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
1 RELEASE NOTES
444
bc39810b3faa Update ChangeLog release.txt for creating new MonetDB JDBC Driver release.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 435
diff changeset
2 MonetDB JDBC driver version 3.0 (Liberica/MCL-1.19)
bc39810b3faa Update ChangeLog release.txt for creating new MonetDB JDBC Driver release.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 435
diff changeset
3 Release date: 2021-02-17
0
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
4
355
69803e5a5a49 Extend text in JDBC release.txt
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 354
diff changeset
5 The Java Database Connectivity (JDBC) API provides universal data access from
69803e5a5a49 Extend text in JDBC release.txt
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 354
diff changeset
6 the Java programming language.
69803e5a5a49 Extend text in JDBC release.txt
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 354
diff changeset
7
69803e5a5a49 Extend text in JDBC release.txt
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 354
diff changeset
8 The MonetDB JDBC driver is designed for use with MonetDB, an Open-Source column-store RDBMS.
177
4959b85b981c Extend DatabaseMetaData.getClientInfoProperties() with new property: treat_clob_as_varchar
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 176
diff changeset
9 For more information see https://www.monetdb.org/
0
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
10
355
69803e5a5a49 Extend text in JDBC release.txt
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 354
diff changeset
11 The latest MonetDB JDBC driver can be downloaded from
69803e5a5a49 Extend text in JDBC release.txt
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 354
diff changeset
12 https://www.monetdb.org/downloads/Java/
69803e5a5a49 Extend text in JDBC release.txt
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 354
diff changeset
13
190
d348d476153a Also update the release notes for the new release
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 182
diff changeset
14 The MonetDB JDBC connection URL format to use is:
182
3715e8550be1 Correct the property separator. Should be a & instead of a ;
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 177
diff changeset
15 jdbc:monetdb://<hostname>[:<portnr>]/<databasename>[?<property>=<value>[&<property>=<value>]]
176
e701b51b3552 Extend release.txt with information on MonetDB JDBC connection URL format
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 163
diff changeset
16
190
d348d476153a Also update the release notes for the new release
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 182
diff changeset
17 Note: For a successful connection the database name part must be provided
d348d476153a Also update the release notes for the new release
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 182
diff changeset
18 and be equal to the name of the database served by the mserver5 process running on
d348d476153a Also update the release notes for the new release
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 182
diff changeset
19 the specified host and listening to the specified port number (default port is 50000).
176
e701b51b3552 Extend release.txt with information on MonetDB JDBC connection URL format
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 163
diff changeset
20
177
4959b85b981c Extend DatabaseMetaData.getClientInfoProperties() with new property: treat_clob_as_varchar
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 176
diff changeset
21 Supported connection properties are:
176
e701b51b3552 Extend release.txt with information on MonetDB JDBC connection URL format
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 163
diff changeset
22 user=<login name>
e701b51b3552 Extend release.txt with information on MonetDB JDBC connection URL format
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 163
diff changeset
23 password=<secret value>
346
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
24 so_timeout=<time in milliseconds> default is: 0 (no timeout)
381
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
25 treat_clob_as_varchar=false default is: true
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
26 treat_blob_as_binary=false default is: true
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
27 language=<sql or mal> default is: sql
435
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 433
diff changeset
28 fetchsize=<nr of rows> default is: 250; -1 means fetch everything at once
381
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
29 debug=true default is: false
346
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
30 logfile=<name of logfile>
363
34ce6e1b1be8 Remove support for deprecated MD5 encryption algorithm in MapiSocket.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 355
diff changeset
31 hash=<SHA512, SHA384, SHA256 or SHA1>
346
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
32
381
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
33 The treat_clob_as_varchar property (when set to true) will let the method
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
34 ResultSetMetaData.getColumnType(int) to return Types.VARCHAR instead of Types.CLOB
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
35 for CLOB ResultSet columns. Generic JDBC applications such as SQuirreL SQL and DBeaver
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
36 will than use rs.getString() instead of rs.getClob() to fetch any CLOB column data.
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
37 Using rs.getString() avoids creating new objects and multiple copies of the clob
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
38 string data resulting in (much) faster response and better user experience.
444
bc39810b3faa Update ChangeLog release.txt for creating new MonetDB JDBC Driver release.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 435
diff changeset
39 This property is turned on by default as of release monetdb-jdbc-3.0.jre8.jar.
381
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
40 You can turn it off if you prefer the old behavior.
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
41
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
42 The treat_blob_as_binary property (when set to true) will let the method
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
43 ResultSetMetaData.getColumnType(int) to return Types.VARBINARY instead of Types.BLOB
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
44 for BLOB ResultSet columns. Generic JDBC applications such as SQuirreL SQL and DBeaver
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
45 will than use rs.getBytes() instead of rs.getBlob() to fetch any BLOB column data.
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
46 Using rs.getBytes() avoids creating new objects and multiple copies of the blob
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
47 string data resulting in (much) faster response and better user experience.
444
bc39810b3faa Update ChangeLog release.txt for creating new MonetDB JDBC Driver release.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 435
diff changeset
48 This property is turned on by default as of release monetdb-jdbc-3.0.jre8.jar.
381
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
49 You can turn it off if you prefer the old behavior.
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
50
346
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
51 We recommend to set following connection properties:
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
52 so_timeout=20000
176
e701b51b3552 Extend release.txt with information on MonetDB JDBC connection URL format
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 163
diff changeset
53
202
43aca1563460 Updated the release notes.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 190
diff changeset
54 Multiple connection properties are separated by the & character.
176
e701b51b3552 Extend release.txt with information on MonetDB JDBC connection URL format
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 163
diff changeset
55 For example:
381
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
56 jdbc:monetdb://localhost:41000/mydb?user=monetdb&password=onlyiknow&so_timeout=20000
176
e701b51b3552 Extend release.txt with information on MonetDB JDBC connection URL format
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 163
diff changeset
57
364
37f54743b1fd Correcting invalid documentation URL refs.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 363
diff changeset
58 See also: https://www.monetdb.org/Documentation/SQLreference/Programming/JDBC
176
e701b51b3552 Extend release.txt with information on MonetDB JDBC connection URL format
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 163
diff changeset
59
177
4959b85b981c Extend DatabaseMetaData.getClientInfoProperties() with new property: treat_clob_as_varchar
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 176
diff changeset
60
190
d348d476153a Also update the release notes for the new release
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 182
diff changeset
61 JDBC COMPLIANCE
355
69803e5a5a49 Extend text in JDBC release.txt
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 354
diff changeset
62 The MonetDB JDBC driver is a type 4 driver (100% pure Java) and
376
ffdc7b0e102d Updated JDBC driver to comply with JDBC 4.2 interface now we compile for Java 8. This includes:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 364
diff changeset
63 complies to JDBC 4.2 definition, see
ffdc7b0e102d Updated JDBC driver to comply with JDBC 4.2 interface now we compile for Java 8. This includes:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 364
diff changeset
64 http://docs.oracle.com/javase/8/docs/technotes/guides/jdbc/index.html
355
69803e5a5a49 Extend text in JDBC release.txt
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 354
diff changeset
65 and
69803e5a5a49 Extend text in JDBC release.txt
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 354
diff changeset
66 https://en.wikipedia.org/wiki/Java_Database_Connectivity
28
9d4b1ef73a5f Updating release notes in preparation of Dec2016 release
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 0
diff changeset
67
0
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
68 Within the current implementation not all functionalities of the JDBC
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
69 interface are available. It is believed, however, that this
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
70 implementation is rich enough to be suitable for a majority of
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
71 application settings.
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
72
28
9d4b1ef73a5f Updating release notes in preparation of Dec2016 release
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 0
diff changeset
73 Below a list of (un)supported features can be found.
210
2dbfc65d8e03 Small update on the release.txt
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 202
diff changeset
74 Please read this list if you intend to use this JDBC driver.
0
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
75
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
76 If you feel some features are missing or have encountered an issue/bug,
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
77 please let us know at our bugtracker:
444
bc39810b3faa Update ChangeLog release.txt for creating new MonetDB JDBC Driver release.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 435
diff changeset
78 https://github.com/MonetDB/monetdb-java/issues
28
9d4b1ef73a5f Updating release notes in preparation of Dec2016 release
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 0
diff changeset
79
376
ffdc7b0e102d Updated JDBC driver to comply with JDBC 4.2 interface now we compile for Java 8. This includes:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 364
diff changeset
80 Currently implemented JDBC 4.2 interfaces include:
0
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
81 * java.sql.Driver
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
82
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
83 * java.sql.Connection
271
4880267d0fe1 Added implementation of java.sql.CallableStatement interface, test program and updated the ChangeLog and release notes.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 234
diff changeset
84 The next features/methods are NOT useable/supported:
89
a6608e9581c1 Moved content of ChangeLog to ChangeLog-Archive.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 78
diff changeset
85 - createArrayOf, createNClob, createStruct, createSQLXML
a6608e9581c1 Moved content of ChangeLog to ChangeLog-Archive.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 78
diff changeset
86 - prepareStatement with array of column indices or column names
210
2dbfc65d8e03 Small update on the release.txt
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 202
diff changeset
87 - setHoldability (close/hold cursors over commit is not configurable)
2dbfc65d8e03 Small update on the release.txt
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 202
diff changeset
88
2dbfc65d8e03 Small update on the release.txt
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 202
diff changeset
89 NOTE: be sure to check for warnings after setting concurrencies or
2dbfc65d8e03 Small update on the release.txt
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 202
diff changeset
90 isolation levels; MonetDB currently does not support anything
2dbfc65d8e03 Small update on the release.txt
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 202
diff changeset
91 else but "fully serializable" transactions.
0
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
92
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
93 * java.sql.DatabaseMetaData
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
94
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
95 * java.sql.Statement
346
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
96 The next methods/options are NOT useable/supported:
28
9d4b1ef73a5f Updating release notes in preparation of Dec2016 release
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 0
diff changeset
97 - cancel (query execution cannot be terminated, once started)
210
2dbfc65d8e03 Small update on the release.txt
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 202
diff changeset
98 see also: https://www.monetdb.org/bugzilla/show_bug.cgi?id=6222
0
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
99 - execute with column indices or names
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
100 - executeUpdate with column indices or names
28
9d4b1ef73a5f Updating release notes in preparation of Dec2016 release
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 0
diff changeset
101 - setMaxFieldSize
0
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
102 - setCursorName
28
9d4b1ef73a5f Updating release notes in preparation of Dec2016 release
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 0
diff changeset
103 - setEscapeProcessing on
0
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
104
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
105 * java.sql.PreparedStatement
346
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
106 The next methods are NOT useable/supported:
0
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
107 - setArray
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
108 - setAsciiStream, setBinaryStream, setUnicodeStream
28
9d4b1ef73a5f Updating release notes in preparation of Dec2016 release
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 0
diff changeset
109 - setBlob
163
e398c27acf7e Implemented PreparedStatement methods setNCharacterStream(int, Reader) and setNCharacterStream(int, Reader, long).
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 158
diff changeset
110 - setNClob
156
2abd488159c4 Implemented PreparedStatement method setURL(int, URL).
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 155
diff changeset
111 - setRef, setRowId, setSQLXML
0
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
112
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
113 * java.sql.ParameterMetaData
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
114
271
4880267d0fe1 Added implementation of java.sql.CallableStatement interface, test program and updated the ChangeLog and release notes.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 234
diff changeset
115 * java.sql.CallableStatement
4880267d0fe1 Added implementation of java.sql.CallableStatement interface, test program and updated the ChangeLog and release notes.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 234
diff changeset
116 The next methods are NOT useable/supported:
4880267d0fe1 Added implementation of java.sql.CallableStatement interface, test program and updated the ChangeLog and release notes.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 234
diff changeset
117 - all getXyz(parameterIndex/parameterName, ...) methods because
4880267d0fe1 Added implementation of java.sql.CallableStatement interface, test program and updated the ChangeLog and release notes.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 234
diff changeset
118 output parameters in stored procedures are not supported by MonetDB
4880267d0fe1 Added implementation of java.sql.CallableStatement interface, test program and updated the ChangeLog and release notes.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 234
diff changeset
119 - all registerOutParameter(parameterIndex/parameterName, int sqlType, ...) methods
4880267d0fe1 Added implementation of java.sql.CallableStatement interface, test program and updated the ChangeLog and release notes.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 234
diff changeset
120 because output parameters in stored procedures are not supported by MonetDB
4880267d0fe1 Added implementation of java.sql.CallableStatement interface, test program and updated the ChangeLog and release notes.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 234
diff changeset
121 - wasNull() method because output parameters in stored procedures are
4880267d0fe1 Added implementation of java.sql.CallableStatement interface, test program and updated the ChangeLog and release notes.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 234
diff changeset
122 not supported by MonetDB
4880267d0fe1 Added implementation of java.sql.CallableStatement interface, test program and updated the ChangeLog and release notes.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 234
diff changeset
123
0
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
124 * java.sql.ResultSet
346
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
125 The next methods are NOT useable/supported:
0
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
126 - getArray
28
9d4b1ef73a5f Updating release notes in preparation of Dec2016 release
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 0
diff changeset
127 - getAsciiStream, getUnicodeStream
152
352b54ff0436 Implemented ResultSet method getNCharacterStream()
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 149
diff changeset
128 - getNClob
28
9d4b1ef73a5f Updating release notes in preparation of Dec2016 release
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 0
diff changeset
129 - getRef, getRowId, getSQLXML
152
352b54ff0436 Implemented ResultSet method getNCharacterStream()
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 149
diff changeset
130 - All methods related to updateable result sets
0
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
131
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
132 * java.sql.ResultSetMetaData
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
133
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
134 * java.sql.SavePoint
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
135
28
9d4b1ef73a5f Updating release notes in preparation of Dec2016 release
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 0
diff changeset
136 * java.sql.Wrapper
9d4b1ef73a5f Updating release notes in preparation of Dec2016 release
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 0
diff changeset
137
0
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
138 * java.sql.Blob
346
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
139 A simple implementation using a byte[] to store the whole BLOB.
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
140 The next method is NOT useable/supported:
0
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
141 - setBinaryStream
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
142
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
143 * java.sql.Clob
346
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
144 A simple implementation using a StringBuilder to store the whole CLOB.
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
145 The next methods are NOT useable/supported:
0
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
146 - setAsciiStream
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
147 - setCharacterStream
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
148
158
b016c9e945a0 Update release.txt as we do have interface java.sql.SQLData implemented by two classes.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 156
diff changeset
149 * java.sql.SQLData
391
f523727db392 Moved Java classes from packages starting with nl.cwi.monetdb.* to package org.monetdb.*
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 381
diff changeset
150 implemented by class: org.monetdb.jdbc.types.INET
f523727db392 Moved Java classes from packages starting with nl.cwi.monetdb.* to package org.monetdb.*
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 381
diff changeset
151 and by class: org.monetdb.jdbc.types.URL
158
b016c9e945a0 Update release.txt as we do have interface java.sql.SQLData implemented by two classes.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 156
diff changeset
152
28
9d4b1ef73a5f Updating release notes in preparation of Dec2016 release
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 0
diff changeset
153 * javax.sql.DataSource (not tested)
0
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
154
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
155
346
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
156 The following java.sql.* interfaces are NOT implemented:
28
9d4b1ef73a5f Updating release notes in preparation of Dec2016 release
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 0
diff changeset
157 * java.sql.Array
376
ffdc7b0e102d Updated JDBC driver to comply with JDBC 4.2 interface now we compile for Java 8. This includes:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 364
diff changeset
158 * java.sql.DriverAction
28
9d4b1ef73a5f Updating release notes in preparation of Dec2016 release
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 0
diff changeset
159 * java.sql.NClob
9d4b1ef73a5f Updating release notes in preparation of Dec2016 release
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 0
diff changeset
160 * java.sql.Ref
9d4b1ef73a5f Updating release notes in preparation of Dec2016 release
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 0
diff changeset
161 * java.sql.Rowid
9d4b1ef73a5f Updating release notes in preparation of Dec2016 release
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 0
diff changeset
162 * java.sql.SQLInput
9d4b1ef73a5f Updating release notes in preparation of Dec2016 release
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 0
diff changeset
163 * java.sql.SQLOutput
376
ffdc7b0e102d Updated JDBC driver to comply with JDBC 4.2 interface now we compile for Java 8. This includes:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 364
diff changeset
164 * java.sql.SQLType
28
9d4b1ef73a5f Updating release notes in preparation of Dec2016 release
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 0
diff changeset
165 * java.sql.SQLXML
9d4b1ef73a5f Updating release notes in preparation of Dec2016 release
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 0
diff changeset
166 * java.sql.Struct
9d4b1ef73a5f Updating release notes in preparation of Dec2016 release
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 0
diff changeset
167
346
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
168
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
169 Notes and Tips for Java Programmers using MonetDB JDBC driver:
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
170 - Close JDBC ResultSet, Statement, PreparedStatement, CallableStatement and
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
171 Connection objects immediately (via close()) when they are no longer needed,
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
172 in order to release resources and memory on the server and client side.
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
173 Especially ResultSets can occupy large amounts of memory on the server and
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
174 client side.
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
175
444
bc39810b3faa Update ChangeLog release.txt for creating new MonetDB JDBC Driver release.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 435
diff changeset
176 - By default the ResultSets created by methods in DatabaseMetaData
bc39810b3faa Update ChangeLog release.txt for creating new MonetDB JDBC Driver release.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 435
diff changeset
177 which return a ResultSet (such as dbmd.getColumns(...)) are
bc39810b3faa Update ChangeLog release.txt for creating new MonetDB JDBC Driver release.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 435
diff changeset
178 TYPE_SCROLL_INSENSITIVE, so they cache their ResultSet data to
bc39810b3faa Update ChangeLog release.txt for creating new MonetDB JDBC Driver release.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 435
diff changeset
179 allow absolute, relative and random access to data rows and fields.
bc39810b3faa Update ChangeLog release.txt for creating new MonetDB JDBC Driver release.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 435
diff changeset
180 To free heap memory and server resoucres, close those ResultSets
bc39810b3faa Update ChangeLog release.txt for creating new MonetDB JDBC Driver release.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 435
diff changeset
181 immediately when no longer needed.
bc39810b3faa Update ChangeLog release.txt for creating new MonetDB JDBC Driver release.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 435
diff changeset
182
bc39810b3faa Update ChangeLog release.txt for creating new MonetDB JDBC Driver release.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 435
diff changeset
183 - By default the ResultSets created by stmt.executeQuery(...) or
bc39810b3faa Update ChangeLog release.txt for creating new MonetDB JDBC Driver release.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 435
diff changeset
184 stmt.execute(...) are TYPE_FORWARD_ONLY, to reduce the potentially large
bc39810b3faa Update ChangeLog release.txt for creating new MonetDB JDBC Driver release.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 435
diff changeset
185 amount of client memory needed to cache the whole ResultSet data.
bc39810b3faa Update ChangeLog release.txt for creating new MonetDB JDBC Driver release.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 435
diff changeset
186
346
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
187 - When you need to execute many SQL queries sequentially reuse the Statement
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
188 object instead of creating a new Statement for each single SQL query.
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
189 Alternatively you can execute the SQL queries as one script (each SQL query
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
190 must be separated by a ; character) string via stmt.execute(script),
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
191 stmt.getResultSet() and stmt.getMoreResults().
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
192 Or you can use the batch execution functionality, see stmt.addBatch() and
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
193 stmt.executeBatch() methods.
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
194
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
195 - The fastest way to retrieve data from a MonetDB ResultSet is via the
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
196 getString(int columnIndex) method, because internally all data
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
197 values (of all types) are stored as Strings, so no conversions are needed.
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
198
381
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
199 - Avoid using rs.getObject() as it will need to construct a new Object for
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
200 each value, even for primitive types such as int, long, boolean.
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
201
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
202 - Avoid using rs.getClob(). Instead use getString() for all CLOB
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
203 columns, which is much faster and uses much (3 times) less memory.
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
204
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
205 - Avoid using rs.getBlob(). Instead use getBytes() to get a byte array
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
206 or use getString() to get a string containing hex pairs, for all BLOB
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
207 columns. These methods are much faster and use much less memory.
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
208 The getString() is the fastest way as no conversions are done at all.
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
209 The getBytes() will need to convert the hex char string into a new bytes[].
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
210
346
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
211 - Try to avoid calling "rs.get...(String columnLabel)" methods inside the
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
212 while(rs.next()) {...} loop. Instead resolve the columnLabels to column
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
213 numbers before the loop via method "int findColumn(String columnLabel)"
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
214 and use the int variables with the rs.get...(int columnIndex) methods.
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
215 This eliminates the call to findColumn(String columnLabel) for
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
216 each value of every column for every row in the ResultSet.
355
69803e5a5a49 Extend text in JDBC release.txt
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 354
diff changeset
217 See also the example Java JDBC program on:
364
37f54743b1fd Correcting invalid documentation URL refs.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 363
diff changeset
218 https://www.monetdb.org/Documentation/SQLreference/Programming/JDBC
346
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
219
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
220 Warning:
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
221 The current implementation of the MonetDB JDBC driver is *not*
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
222 multi-thread safe. If your program uses multiple threads concurrently on
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
223 the same Connection (so one MapiSocket), this may lead to incorrect behavior
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
224 and results (due to race conditions).
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
225 You will need to serialize the processing of the threads in your Java program.
381
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
226 Alternatively you can use a separate JDBC Connection for each thread.
346
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
227
444
bc39810b3faa Update ChangeLog release.txt for creating new MonetDB JDBC Driver release.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 435
diff changeset
228 Note: as of Febr 2021 (monetdb-jdbc-3.0.jre8.jar) we compile all
354
b1f8750e6cde Switch to Java 8 compilation and distribution as Java 7 is no longer supported.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 346
diff changeset
229 the java sources to target: Java SE 8 (profile compact2), so
b1f8750e6cde Switch to Java 8 compilation and distribution as Java 7 is no longer supported.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 346
diff changeset
230 you need a JRE/JDK JVM of version 8 or higher to use it.
346
5d108b9ffc64 Improved and extended the JDBC driver release information with notes and tips for programmers who want to use the MonetDB JDBC driver.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 340
diff changeset
231