annotate tests/JDBC_API_Tester.java @ 591:b2cd3b828967

Simplify OnClientTester program. It no longer uses reflection and method naming conventions to find out which tests to run, but just executes them sequentially. This is much easier to read, understand and maintain. The TestRunner superclass has also been merged into OnClientTester, so only one file is now needed. TestRunner.java file will be removed later, after all has proven to work well in testweb.
author Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
date Thu, 18 Nov 2021 16:41:07 +0100 (2021-11-18)
parents fca22b72ce7e
children f4181beae53d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1 /*
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2 * This Source Code Form is subject to the terms of the Mozilla Public
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3 * License, v. 2.0. If a copy of the MPL was not distributed with this
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5 *
406
bf9f6b6ecf40 Update Copyright year.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 404
diff changeset
6 * Copyright 1997 - July 2008 CWI, August 2008 - 2021 MonetDB B.V.
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
7 */
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
8
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
9 import java.sql.*;
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
10
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
11 import java.io.StringReader;
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
12 import java.math.BigDecimal;
447
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
13 import java.math.BigInteger;
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
14 import java.nio.charset.Charset;
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
15 import java.text.SimpleDateFormat;
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
16 import java.util.ArrayList;
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
17 import java.util.Calendar;
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
18 import java.util.Iterator;
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
19 import java.util.List;
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
20 import java.util.TimeZone;
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
21
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
22 import org.monetdb.jdbc.types.INET;
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
23 import org.monetdb.jdbc.types.URL;
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
24
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
25 /**
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
26 * class to test JDBC Driver API methods and behavior of MonetDB server.
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
27 *
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
28 * It combines 40+ tests which were previous individual test programs
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
29 * into one large test program, reusing the connection.
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
30 * This speeds up testing considerably as the overhead of starting a JVM and
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
31 * loading the java test program class and MonetDB JDBC driver is now reduced
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
32 * to only one time instead of 40+ times.
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
33 * Also all output is no longer send to system out/err but collected in a StringBuilder.
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
34 * The contents of it is compared with the expected output at the end of each test.
469
53911f29093c Change output to stderr when differences are found.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 464
diff changeset
35 * Only when it deviates the output is sent to system err, see compareExpectedOutput().
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
36 *
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
37 * @author Martin van Dinther
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
38 * @version 0.2
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
39 */
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
40 final public class JDBC_API_Tester {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
41 StringBuilder sb; // buffer to collect the test output
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
42 final static int sbInitLen = 3712;
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
43 Connection con; // main connection shared by all tests
469
53911f29093c Change output to stderr when differences are found.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 464
diff changeset
44 boolean foundDifferences = false;
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
45
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
46 public static void main(String[] args) throws Exception {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
47 String con_URL = args[0];
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
48
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
49 JDBC_API_Tester jt = new JDBC_API_Tester();
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
50 jt.sb = new StringBuilder(sbInitLen);
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
51 jt.con = DriverManager.getConnection(con_URL);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
52 // we are now connected
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
53
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
54 // run the tests
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
55 jt.Test_Cautocommit(con_URL);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
56 jt.Test_CisValid();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
57 jt.Test_Clargequery();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
58 jt.Test_Cmanycon(con_URL);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
59 jt.Test_Creplysize();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
60 jt.Test_Csavepoints();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
61 jt.Test_Ctransaction();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
62 jt.Test_Dobjects();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
63 jt.Test_FetchSize();
447
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
64 jt.Test_Int128();
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
65 jt.Test_PSgeneratedkeys();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
66 jt.Test_PSgetObject();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
67 jt.Test_PSlargebatchval();
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
68 jt.Test_PSlargeresponse(con_URL);
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
69 jt.Test_PSmanycon(con_URL);
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
70 jt.Test_PSmetadata();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
71 jt.Test_PSsomeamount();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
72 jt.Test_PSsqldata();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
73 jt.Test_PStimedate();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
74 jt.Test_PStimezone();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
75 jt.Test_PStypes();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
76 jt.Test_CallableStmt();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
77 jt.Test_Rbooleans();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
78 jt.Test_Rmetadata();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
79 jt.Test_Rpositioning();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
80 jt.Test_Rsqldata();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
81 jt.Test_Rtimedate();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
82 jt.Test_Sbatching();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
83 jt.Test_Smoreresults();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
84 jt.Test_Wrapper();
453
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
85 jt.bogus_auto_generated_keys();
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
86 jt.BugConcurrent_clients_SF_1504657(con_URL);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
87 jt.BugConcurrent_sequences(con_URL);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
88 jt.Bug_Connect_as_voc_getMetaData_Failure_Bug_6388(con_URL);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
89 jt.BugDatabaseMetaData_Bug_3356();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
90 jt.BugDecimalRound_Bug_3561();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
91 jt.BugExecuteUpdate_Bug_3350();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
92 jt.Bug_IsValid_Timeout_Bug_6782(con_URL);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
93 jt.Bug_LargeQueries_6571_6693(con_URL);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
94 jt.Bug_PrepStmtSetObject_CLOB_6349();
436
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
95 jt.Bug_PrepStmtSetString_6382();
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
96 jt.Bug_PrepStmt_With_Errors_Jira292();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
97 jt.BugResultSetMetaData_Bug_6183();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
98 jt.BugSetQueryTimeout_Bug_3357();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
99 jt.SQLcopyinto();
464
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
100 /* run next long running test (11 minutes) only before a new release */
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
101 /* jt.Test_PSlargeamount(); */
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
102
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
103 jt.closeConx(jt.con);
469
53911f29093c Change output to stderr when differences are found.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 464
diff changeset
104
53911f29093c Change output to stderr when differences are found.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 464
diff changeset
105 if (jt.foundDifferences)
53911f29093c Change output to stderr when differences are found.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 464
diff changeset
106 System.exit(-1);
550
c5cf3f00c4c5 Run the OnClient tests from JDBC_API_Tester
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents: 488
diff changeset
107
591
b2cd3b828967 Simplify OnClientTester program.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 587
diff changeset
108 OnClientTester oct = new OnClientTester(con_URL, 0);
b2cd3b828967 Simplify OnClientTester program.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 587
diff changeset
109 int failures = oct.runTests();
550
c5cf3f00c4c5 Run the OnClient tests from JDBC_API_Tester
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents: 488
diff changeset
110 if (failures > 0)
c5cf3f00c4c5 Run the OnClient tests from JDBC_API_Tester
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents: 488
diff changeset
111 System.exit(-1);
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
112 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
113
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
114 private void Test_Cautocommit(String arg0) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
115 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
116
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
117 Connection con1 = con;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
118 Connection con2 = null;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
119 Statement stmt1 = null;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
120 Statement stmt2 = null;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
121 ResultSet rs = null;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
122 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
123 con2 = DriverManager.getConnection(arg0);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
124
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
125 // >> true: auto commit should be on by default
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
126 if (con1.getAutoCommit() != true)
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
127 sb.append("expecting con1 to have autocommit on/true");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
128 if (con2.getAutoCommit() != true)
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
129 sb.append("expecting con2 to have autocommit on/true");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
130
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
131 // test commit by checking if a change is visible in another connection
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
132 stmt1 = con1.createStatement();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
133 sb.append("1. create...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
134 stmt1.executeUpdate("CREATE TABLE table_Test_Cautocommit ( id int )");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
135 sb.append("passed :)\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
136
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
137 stmt2 = con2.createStatement();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
138 sb.append("2. select...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
139 rs = stmt2.executeQuery("SELECT * FROM table_Test_Cautocommit");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
140 sb.append("passed :)\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
141 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
142 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
143 closeStmtResSet(stmt2, rs);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
144 closeStmtResSet(stmt1, null);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
145 closeConx(con2);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
146 sb.append("ABORTING TEST!!!");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
147 return;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
148 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
149
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
150 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
151 // turn off auto commit
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
152 con1.setAutoCommit(false);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
153 con2.setAutoCommit(false);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
154
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
155 // >> false: we just disabled it
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
156 if (con1.getAutoCommit() != false)
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
157 sb.append("expecting con1 to have autocommit off/false");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
158 if (con2.getAutoCommit() != false)
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
159 sb.append("expecting con2 to have autocommit off/false");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
160
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
161 // a change would not be visible now
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
162 sb.append("3. drop...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
163 stmt2.executeUpdate("DROP TABLE table_Test_Cautocommit");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
164 sb.append("passed :)\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
165
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
166 sb.append("4. select...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
167 rs = stmt1.executeQuery("SELECT * FROM table_Test_Cautocommit");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
168 sb.append("passed :)\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
169
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
170 sb.append("5. commit...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
171 con2.commit();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
172 sb.append("passed :)\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
173
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
174 sb.append("6. select...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
175 rs = stmt1.executeQuery("SELECT * FROM table_Test_Cautocommit");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
176 sb.append("passed :)\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
177
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
178 sb.append("7. commit...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
179 con1.commit();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
180 sb.append("passed :)\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
181
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
182 // restore original auto commit setting
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
183 con1.setAutoCommit(true);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
184 con2.setAutoCommit(true);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
185 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
186 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
187 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
188
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
189 closeStmtResSet(stmt1, rs);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
190 closeStmtResSet(stmt2, null);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
191
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
192 closeConx(con2);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
193
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
194 compareExpectedOutput("Test_Cautocommit",
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
195 "1. create...passed :)\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
196 "2. select...passed :)\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
197 "3. drop...passed :)\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
198 "4. select...passed :)\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
199 "5. commit...passed :)\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
200 "6. select...passed :)\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
201 "7. commit...passed :)\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
202 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
203
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
204 private void Test_CisValid() {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
205 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
206
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
207 Statement stmt = null;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
208 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
209 stmt = con.createStatement();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
210 con.setAutoCommit(false); // start a transaction
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
211 stmt.executeQuery("SELECT COUNT(*) FROM doesnotexist;"); // let's trigger an error
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
212 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
213 // e.printStackTrace();
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
214 sb.append("Expected error: ").append(e).append("\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
215 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
216 // test calling conn.isValid()
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
217 sb.append("Validating connection: con.isValid? ").append(con.isValid(30));
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
218 // Can we rollback on this connection without causing an error?
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
219 con.rollback();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
220 } catch (SQLException e2) {
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
221 sb.append("UnExpected error: ").append(e2);
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
222 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
223 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
224
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
225 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
226 // restore auto commit mode
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
227 con.setAutoCommit(true);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
228 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
229 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
230 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
231
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
232 closeStmtResSet(stmt, null);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
233
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
234 compareExpectedOutput("Test_CisValid",
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
235 "Expected error: java.sql.SQLException: SELECT: no such table 'doesnotexist'\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
236 "Validating connection: con.isValid? true");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
237 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
238
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
239 private void Test_Clargequery() {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
240 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
241 final String query =
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
242 "-- When a query larger than the send buffer is being " +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
243 "sent, a deadlock situation can occur when the server writes " +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
244 "data back, blocking because we as client are sending as well " +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
245 "and not reading. Hence, to avoid this deadlock, in JDBC a " +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
246 "separate thread is started in the background such that results " +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
247 "from the server can be read, while data is still being sent to " +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
248 "the server. To test this, we need to trigger the SendThread " +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
249 "being started, which we do with a quite large query. We " +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
250 "construct it by repeating some stupid query plus a comment " +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
251 "a lot of times. And as you're guessing by now, you're reading " +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
252 "this stupid comment that we use :)\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
253 "select 1;\n";
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
254
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
255 final int size = 1234;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
256 StringBuilder bigq = new StringBuilder(query.length() * size);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
257 for (int i = 0; i < size; i++) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
258 bigq.append(query);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
259 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
260
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
261 Statement stmt = null;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
262 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
263 // >> true: auto commit should be on by default
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
264 sb.append("0. true\t").append(con.getAutoCommit()).append("\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
265 stmt = con.createStatement();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
266
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
267 // sending big script with many simple queries
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
268 sb.append("1. executing script\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
269 stmt.execute(bigq.toString());
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
270
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
271 int i = 1; // we skip the first "getResultSet()"
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
272 while (stmt.getMoreResults() != false) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
273 i++;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
274 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
275 if (stmt.getUpdateCount() != -1) {
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
276 sb.append("Error: found an update count for a SELECT query\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
277 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
278 if (i != size) {
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
279 sb.append("Error: expecting ").append(size).append(" tuples, only got ").append(i).append("\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
280 }
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
281 sb.append("2. queries processed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
282 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
283 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
284 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
285
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
286 closeStmtResSet(stmt, null);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
287
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
288 compareExpectedOutput("Test_Clargequery",
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
289 "0. true true\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
290 "1. executing script\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
291 "2. queries processed\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
292 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
293
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
294 private void Test_Cmanycon(String arg0) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
295 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
296
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
297 final int maxCons = 60; // default max_clients is 64, 2 connections are already open from this program
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
298 List<Connection> cons = new ArrayList<Connection>(maxCons); // Connections go in here
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
299 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
300 // spawn a lot of Connections, just for fun...
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
301 int i = 1;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
302 sb.append("Establishing Connection ");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
303 for (; i <= maxCons; i++) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
304 sb.append(i);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
305 Connection conx = DriverManager.getConnection(arg0);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
306 sb.append(",");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
307 cons.add(conx);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
308
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
309 // do something with the connection to test if it works
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
310 conx.setAutoCommit(false);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
311 sb.append(" ");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
312 conx.createStatement();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
313 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
314 sb.append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
315
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
316 // now try to nicely close them
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
317 i = 1;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
318 sb.append("Closing Connection ");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
319 for (Iterator<Connection> it = cons.iterator(); it.hasNext(); i++) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
320 Connection conx = it.next();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
321 // see if the connection still works
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
322 sb.append(i);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
323 conx.setAutoCommit(true);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
324 sb.append(",");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
325 conx.close(); // this will also implicitly close the created statement object
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
326 sb.append(" ");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
327 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
328 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
329 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
330 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
331
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
332 compareExpectedOutput("Test_Cmanycon",
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
333 "Establishing Connection 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, " +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
334 "11, 12, 13, 14, 15, 16, 17, 18, 19, 20, " +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
335 "21, 22, 23, 24, 25, 26, 27, 28, 29, 30, " +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
336 "31, 32, 33, 34, 35, 36, 37, 38, 39, 40, " +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
337 "41, 42, 43, 44, 45, 46, 47, 48, 49, 50, " +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
338 "51, 52, 53, 54, 55, 56, 57, 58, 59, 60, \n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
339 "Closing Connection 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, " +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
340 "11, 12, 13, 14, 15, 16, 17, 18, 19, 20, " +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
341 "21, 22, 23, 24, 25, 26, 27, 28, 29, 30, " +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
342 "31, 32, 33, 34, 35, 36, 37, 38, 39, 40, " +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
343 "41, 42, 43, 44, 45, 46, 47, 48, 49, 50, " +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
344 "51, 52, 53, 54, 55, 56, 57, 58, 59, 60, ");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
345 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
346
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
347 private void Test_Creplysize() {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
348 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
349
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
350 Statement stmt1 = null;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
351 ResultSet rs = null;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
352 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
353 con.setAutoCommit(false);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
354 // >> true: auto commit should be off by now
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
355 sb.append("0. true\t").append(con.getAutoCommit()).append("\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
356
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
357 stmt1 = con.createStatement();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
358 // test commit by checking if a change is visible in another connection
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
359 sb.append("1. create... ");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
360 stmt1.executeUpdate("CREATE TABLE table_Test_Creplysize ( id int )");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
361 sb.append("passed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
362
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
363 sb.append("2. populating with 21 records... ");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
364 for (int i = 0; i < 21; i++)
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
365 stmt1.executeUpdate("INSERT INTO table_Test_Creplysize (id) values (" + (i + 1) + ")");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
366 sb.append("passed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
367
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
368 sb.append("3. hinting the driver to use fetchsize 10... ");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
369 stmt1.setFetchSize(10);
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
370 sb.append("passed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
371
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
372 sb.append("4. selecting all values... ");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
373 rs = stmt1.executeQuery("SELECT * FROM table_Test_Creplysize");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
374 int i = 0;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
375 while (rs.next())
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
376 i++;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
377 rs.close();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
378 if (i == 21) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
379 sb.append("passed");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
380 } else {
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
381 sb.append("got ").append(i).append(" records!!!");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
382 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
383 sb.append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
384
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
385 sb.append("5. resetting driver fetchsize hint... ");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
386 stmt1.setFetchSize(0);
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
387 sb.append("passed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
388
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
389 sb.append("6. instructing the driver to return at max 10 rows... ");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
390 stmt1.setMaxRows(10);
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
391 sb.append("passed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
392
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
393 sb.append("7. selecting all values... ");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
394 rs = stmt1.executeQuery("SELECT * FROM table_Test_Creplysize");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
395 i = 0;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
396 while (rs.next())
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
397 i++;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
398 rs.close();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
399 if (i == 10) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
400 sb.append("passed");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
401 } else {
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
402 sb.append("got ").append(i).append(" records!!!");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
403 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
404 sb.append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
405
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
406 sb.append("8. hinting the driver to use fetchsize 5... ");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
407 stmt1.setFetchSize(5);
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
408 sb.append("passed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
409
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
410 sb.append("9. selecting all values... ");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
411 rs = stmt1.executeQuery("SELECT * FROM table_Test_Creplysize");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
412 i = 0;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
413 while (rs.next())
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
414 i++;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
415 rs.close();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
416 if (i == 10) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
417 sb.append("passed");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
418 } else {
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
419 sb.append("got ").append(i).append(" records!!!");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
420 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
421 sb.append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
422
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
423 sb.append("10. drop... ");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
424 stmt1.executeUpdate("DROP TABLE table_Test_Creplysize");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
425 sb.append("passed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
426
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
427 con.rollback();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
428
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
429 // restore auto commit mode
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
430 con.setAutoCommit(true);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
431 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
432 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
433 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
434
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
435 closeStmtResSet(stmt1, rs);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
436
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
437 compareExpectedOutput("Test_Creplysize",
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
438 "0. true false\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
439 "1. create... passed\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
440 "2. populating with 21 records... passed\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
441 "3. hinting the driver to use fetchsize 10... passed\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
442 "4. selecting all values... passed\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
443 "5. resetting driver fetchsize hint... passed\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
444 "6. instructing the driver to return at max 10 rows... passed\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
445 "7. selecting all values... passed\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
446 "8. hinting the driver to use fetchsize 5... passed\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
447 "9. selecting all values... passed\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
448 "10. drop... passed\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
449 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
450
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
451 private void Test_Csavepoints() {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
452 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
453
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
454 Statement stmt = null;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
455 ResultSet rs = null;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
456 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
457 // >> true: auto commit should be on by default
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
458 sb.append("0. true\t").append(con.getAutoCommit()).append("\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
459
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
460 // savepoints require a non-autocommit connection
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
461 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
462 sb.append("1. savepoint...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
463 con.setSavepoint();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
464 sb.append("passed !!");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
465 } catch (SQLException e) {
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
466 sb.append("expected msg: ").append(e.getMessage());
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
467 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
468 sb.append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
469
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
470 con.setAutoCommit(false);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
471 // >> true: auto commit should be on by default
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
472 sb.append("0. false\t").append(con.getAutoCommit()).append("\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
473
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
474 sb.append("2. savepoint...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
475 /* make a savepoint, and discard it */
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
476 con.setSavepoint();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
477 sb.append("passed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
478
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
479 stmt = con.createStatement();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
480 stmt.executeUpdate("CREATE TABLE table_Test_Csavepoints ( id int, PRIMARY KEY (id) )");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
481
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
482 sb.append("3. savepoint...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
483 Savepoint sp2 = con.setSavepoint("empty table");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
484 sb.append("passed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
485
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
486 rs = stmt.executeQuery("SELECT id FROM table_Test_Csavepoints");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
487 int i = 0;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
488 int items = 0;
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
489 sb.append("4. table ").append(items).append(" items");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
490 while (rs.next()) {
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
491 sb.append(", ").append(rs.getString("id"));
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
492 i++;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
493 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
494 if (i != items) {
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
495 sb.append(" FAILED (").append(i).append(")");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
496 }
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
497 sb.append(" passed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
498
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
499 stmt.executeUpdate("INSERT INTO table_Test_Csavepoints VALUES (1)");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
500 stmt.executeUpdate("INSERT INTO table_Test_Csavepoints VALUES (2)");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
501 stmt.executeUpdate("INSERT INTO table_Test_Csavepoints VALUES (3)");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
502
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
503 sb.append("5. savepoint...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
504 Savepoint sp3 = con.setSavepoint("three values");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
505 sb.append("passed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
506
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
507 rs = stmt.executeQuery("SELECT id FROM table_Test_Csavepoints");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
508 i = 0;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
509 items = 3;
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
510 sb.append("6. table ").append(items).append(" items");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
511 while (rs.next()) {
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
512 sb.append(", ").append(rs.getString("id"));
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
513 i++;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
514 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
515 if (i != items) {
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
516 sb.append(" FAILED (").append(i).append(")");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
517 }
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
518 sb.append(" passed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
519
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
520 sb.append("7. release...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
521 con.releaseSavepoint(sp3);
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
522 sb.append("passed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
523
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
524 rs = stmt.executeQuery("SELECT id FROM table_Test_Csavepoints");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
525 i = 0;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
526 items = 3;
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
527 sb.append("8. table ").append(items).append(" items");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
528 while (rs.next()) {
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
529 sb.append(", ").append(rs.getString("id"));
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
530 i++;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
531 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
532 if (i != items) {
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
533 sb.append(" FAILED (").append(i).append(") :(");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
534 }
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
535 sb.append(" passed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
536
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
537 sb.append("9. rollback...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
538 con.rollback(sp2);
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
539 sb.append("passed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
540
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
541 rs = stmt.executeQuery("SELECT id FROM table_Test_Csavepoints");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
542 i = 0;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
543 items = 0;
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
544 sb.append("10. table ").append(items).append(" items");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
545 while (rs.next()) {
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
546 sb.append(", ").append(rs.getString("id"));
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
547 i++;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
548 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
549 if (i != items) {
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
550 sb.append(" FAILED (").append(i).append(") :(");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
551 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
552 sb.append(" passed");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
553
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
554 con.rollback();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
555
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
556 // restore auto commit mode
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
557 con.setAutoCommit(true);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
558 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
559 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
560 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
561
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
562 closeStmtResSet(stmt, rs);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
563
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
564 compareExpectedOutput("Test_Csavepoints",
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
565 "0. true true\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
566 "1. savepoint...expected msg: SAVEPOINT: not allowed in auto commit mode\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
567 "0. false false\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
568 "2. savepoint...passed\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
569 "3. savepoint...passed\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
570 "4. table 0 items passed\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
571 "5. savepoint...passed\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
572 "6. table 3 items, 1, 2, 3 passed\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
573 "7. release...passed\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
574 "8. table 3 items, 1, 2, 3 passed\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
575 "9. rollback...passed\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
576 "10. table 0 items passed");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
577 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
578
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
579 private void Test_Ctransaction() {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
580 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
581
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
582 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
583 // test commit by checking if a change is visible in another connection
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
584 sb.append("1. commit...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
585 con.commit();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
586 sb.append("passed");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
587 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
588 // this means we get what we expect
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
589 sb.append("failed as expected: ").append(e.getMessage());
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
590 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
591 sb.append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
592
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
593 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
594 // turn off auto commit
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
595 con.setAutoCommit(false);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
596 // >> false: we just disabled it
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
597 sb.append("2. false\t").append(con.getAutoCommit()).append("\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
598
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
599 // a change would not be visible now
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
600 sb.append("3. commit...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
601 con.commit();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
602 sb.append("passed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
603
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
604 sb.append("4. commit...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
605 con.commit();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
606 sb.append("passed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
607
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
608 sb.append("5. rollback...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
609 con.rollback();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
610 sb.append("passed");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
611 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
612 sb.append("FAILED: ").append(e.getMessage());
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
613 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
614 sb.append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
615
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
616 Statement stmt = null;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
617 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
618 // turn off auto commit
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
619 con.setAutoCommit(true);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
620 // >> false: we just disabled it
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
621 sb.append("6. true\t").append(con.getAutoCommit()).append("\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
622
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
623 stmt = con.createStatement();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
624 sb.append("7. start transaction...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
625 stmt.executeUpdate("START TRANSACTION");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
626 sb.append("passed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
627
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
628 sb.append("8. commit...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
629 con.commit();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
630 sb.append("passed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
631
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
632 sb.append("9. true\t").append(con.getAutoCommit());
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
633 sb.append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
634
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
635 sb.append("10. start transaction...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
636 stmt.executeUpdate("START TRANSACTION");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
637 sb.append("passed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
638
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
639 sb.append("11. rollback...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
640 con.rollback();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
641 sb.append("passed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
642
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
643 sb.append("12. true\t").append(con.getAutoCommit());
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
644 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
645 sb.append("FAILED: ").append(e.getMessage());
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
646 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
647 sb.append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
648
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
649 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
650 // a commit now should fail
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
651 sb.append("13. commit...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
652 con.commit();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
653 sb.append("passed");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
654 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
655 // this means we get what we expect
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
656 sb.append("failed as expected: ").append(e.getMessage());
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
657 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
658 sb.append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
659
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
660 closeStmtResSet(stmt, null);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
661
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
662 compareExpectedOutput("Test_Ctransaction",
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
663 "1. commit...failed as expected: COMMIT: not allowed in auto commit mode\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
664 "2. false false\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
665 "3. commit...passed\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
666 "4. commit...passed\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
667 "5. rollback...passed\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
668 "6. true true\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
669 "7. start transaction...passed\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
670 "8. commit...passed\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
671 "9. true true\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
672 "10. start transaction...passed\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
673 "11. rollback...passed\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
674 "12. true true\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
675 "13. commit...failed as expected: COMMIT: not allowed in auto commit mode\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
676 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
677
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
678 private void Test_Dobjects() {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
679 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
680
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
681 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
682 DatabaseMetaData dbmd = con.getMetaData();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
683
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
684 // inspect the catalog by use of dbmd functions
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
685 compareResultSet(dbmd.getCatalogs(), "getCatalogs()",
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
686 "Resultset with 1 columns\n" +
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
687 "TABLE_CAT\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
688
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
689 compareResultSet(dbmd.getSchemas(null, "sys"), "getSchemas(null, sys)",
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
690 "Resultset with 2 columns\n" +
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
691 "TABLE_SCHEM TABLE_CATALOG\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
692 "sys null\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
693
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
694 compareResultSet(dbmd.getTables(null, "tmp", null, null), "getTables(null, tmp, null, null)", // schema tmp has 6 tables
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
695 "Resultset with 10 columns\n" +
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
696 "TABLE_CAT TABLE_SCHEM TABLE_NAME TABLE_TYPE REMARKS TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
697 "null tmp _columns SYSTEM TABLE null null null null null null\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
698 "null tmp _tables SYSTEM TABLE null null null null null null\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
699 "null tmp idxs SYSTEM TABLE null null null null null null\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
700 "null tmp keys SYSTEM TABLE null null null null null null\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
701 "null tmp objects SYSTEM TABLE null null null null null null\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
702 "null tmp triggers SYSTEM TABLE null null null null null null\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
703
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
704 compareResultSet(dbmd.getTables(null, "sys", "schemas", null), "getTables(null, sys, schemas, null)",
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
705 "Resultset with 10 columns\n" +
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
706 "TABLE_CAT TABLE_SCHEM TABLE_NAME TABLE_TYPE REMARKS TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
707 "null sys schemas SYSTEM TABLE null null null null null null\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
708
427
e79bfbd0553e Added support for escaped wildcards (\% en \_) in String arguments of
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 406
diff changeset
709 compareResultSet(dbmd.getColumns(null, "sys", "table\\_types", null), "getColumns(null, sys, table\\_types, null)",
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
710 "Resultset with 24 columns\n" +
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
711 "TABLE_CAT TABLE_SCHEM TABLE_NAME COLUMN_NAME DATA_TYPE TYPE_NAME COLUMN_SIZE BUFFER_LENGTH DECIMAL_DIGITS NUM_PREC_RADIX NULLABLE REMARKS COLUMN_DEF SQL_DATA_TYPE SQL_DATETIME_SUB CHAR_OCTET_LENGTH ORDINAL_POSITION IS_NULLABLE SCOPE_CATALOG SCOPE_SCHEMA SCOPE_TABLE SOURCE_DATA_TYPE IS_AUTOINCREMENT IS_GENERATEDCOLUMN\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
712 "null sys table_types table_type_id 5 smallint 16 0 0 2 0 null null 0 0 null 1 NO null null null null NO NO\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
713 "null sys table_types table_type_name 12 varchar 25 0 0 0 0 null null 0 0 25 2 NO null null null null NO NO\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
714
427
e79bfbd0553e Added support for escaped wildcards (\% en \_) in String arguments of
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 406
diff changeset
715 compareResultSet(dbmd.getPrimaryKeys(null, "sys", "table\\_types"), "getPrimaryKeys(null, sys, table\\_types)",
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
716 "Resultset with 6 columns\n" +
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
717 "TABLE_CAT TABLE_SCHEM TABLE_NAME COLUMN_NAME KEY_SEQ PK_NAME\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
718 "null sys table_types table_type_id 1 table_types_table_type_id_pkey\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
719
427
e79bfbd0553e Added support for escaped wildcards (\% en \_) in String arguments of
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 406
diff changeset
720 compareResultSet(dbmd.getExportedKeys(null, "sys", "table\\_types"), "getExportedKeys(null, sys, table\\_types)",
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
721 "Resultset with 14 columns\n" +
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
722 "PKTABLE_CAT PKTABLE_SCHEM PKTABLE_NAME PKCOLUMN_NAME FKTABLE_CAT FKTABLE_SCHEM FKTABLE_NAME FKCOLUMN_NAME KEY_SEQ UPDATE_RULE DELETE_RULE FK_NAME PK_NAME DEFERRABILITY\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
723
427
e79bfbd0553e Added support for escaped wildcards (\% en \_) in String arguments of
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 406
diff changeset
724 compareResultSet(dbmd.getCrossReference(null, "sys", "tables", null, "sys", "table\\_types"), "getCrossReference(null, sys, tables, null, sys, table\\_types)",
e79bfbd0553e Added support for escaped wildcards (\% en \_) in String arguments of
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 406
diff changeset
725 "Resultset with 14 columns\n" +
e79bfbd0553e Added support for escaped wildcards (\% en \_) in String arguments of
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 406
diff changeset
726 "PKTABLE_CAT PKTABLE_SCHEM PKTABLE_NAME PKCOLUMN_NAME FKTABLE_CAT FKTABLE_SCHEM FKTABLE_NAME FKCOLUMN_NAME KEY_SEQ UPDATE_RULE DELETE_RULE FK_NAME PK_NAME DEFERRABILITY\n");
e79bfbd0553e Added support for escaped wildcards (\% en \_) in String arguments of
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 406
diff changeset
727
e79bfbd0553e Added support for escaped wildcards (\% en \_) in String arguments of
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 406
diff changeset
728 compareResultSet(dbmd.getImportedKeys(null, "sys", "table\\_types"), "getImportedKeys(null, sys, table\\_types)",
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
729 "Resultset with 14 columns\n" +
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
730 "PKTABLE_CAT PKTABLE_SCHEM PKTABLE_NAME PKCOLUMN_NAME FKTABLE_CAT FKTABLE_SCHEM FKTABLE_NAME FKCOLUMN_NAME KEY_SEQ UPDATE_RULE DELETE_RULE FK_NAME PK_NAME DEFERRABILITY\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
731
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
732 compareResultSet(dbmd.getIndexInfo(null, "sys", "key_types", false, false), "getIndexInfo(null, sys, key_types, false, false)",
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
733 "Resultset with 13 columns\n" +
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
734 "TABLE_CAT TABLE_SCHEM TABLE_NAME NON_UNIQUE INDEX_QUALIFIER INDEX_NAME TYPE ORDINAL_POSITION COLUMN_NAME ASC_OR_DESC CARDINALITY PAGES FILTER_CONDITION\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
735 "null sys key_types false null key_types_key_type_id_pkey 2 1 key_type_id null 3 0 null\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
736 "null sys key_types false null key_types_key_type_name_unique 2 1 key_type_name null 3 0 null\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
737
427
e79bfbd0553e Added support for escaped wildcards (\% en \_) in String arguments of
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 406
diff changeset
738 compareResultSet(dbmd.getTablePrivileges(null, "sys", "table\\_types"), "getTablePrivileges(null, sys, table\\_types)",
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
739 "Resultset with 7 columns\n" +
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
740 "TABLE_CAT TABLE_SCHEM TABLE_NAME GRANTOR GRANTEE PRIVILEGE IS_GRANTABLE\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
741 "null sys table_types monetdb public SELECT NO\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
742
427
e79bfbd0553e Added support for escaped wildcards (\% en \_) in String arguments of
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 406
diff changeset
743 compareResultSet(dbmd.getColumnPrivileges(null, "sys", "table\\_types", null), "getColumnPrivileges(null, sys, table\\_types, null)",
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
744 "Resultset with 8 columns\n" +
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
745 "TABLE_CAT TABLE_SCHEM TABLE_NAME COLUMN_NAME GRANTOR GRANTEE PRIVILEGE IS_GRANTABLE\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
746
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
747 compareResultSet(dbmd.getUDTs(null, "sys", null, null), "getUDTs(null, sys, null, null)",
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
748 "Resultset with 7 columns\n" +
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
749 "TYPE_CAT TYPE_SCHEM TYPE_NAME CLASS_NAME DATA_TYPE REMARKS BASE_TYPE\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
750 "null sys inet org.monetdb.jdbc.types.INET 2000 inet null\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
751 "null sys json java.lang.String 2000 json null\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
752 "null sys url org.monetdb.jdbc.types.URL 2000 url null\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
753 "null sys uuid java.lang.String 2000 uuid null\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
754
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
755 int[] UDTtypes = { Types.STRUCT, Types.DISTINCT };
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
756 compareResultSet(dbmd.getUDTs(null, "sys", null, UDTtypes), "getUDTs(null, sys, null, UDTtypes",
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
757 "Resultset with 7 columns\n" +
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
758 "TYPE_CAT TYPE_SCHEM TYPE_NAME CLASS_NAME DATA_TYPE REMARKS BASE_TYPE\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
759
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
760 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
761 } catch (SQLException e) {
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
762 sb.setLength(0); // clear the output log buffer
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
763 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
764 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
765
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
766 compareExpectedOutput("Test_Dobjects", "");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
767 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
768
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
769 private void compareResultSet(ResultSet rs, String methodnm, String expected) throws SQLException {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
770 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
771
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
772 ResultSetMetaData rsmd = rs.getMetaData();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
773 int columnCount = rsmd.getColumnCount();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
774 sb.append("Resultset with ").append(columnCount).append(" columns\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
775 for (int col = 1; col <= columnCount; col++) {
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
776 if (col > 1)
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
777 sb.append("\t");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
778 sb.append(rsmd.getColumnName(col));
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
779 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
780 sb.append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
781 while (rs.next()) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
782 for (int col = 1; col <= columnCount; col++) {
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
783 if (col > 1)
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
784 sb.append("\t");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
785 sb.append(rs.getString(col));
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
786 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
787 sb.append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
788 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
789 rs.close();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
790
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
791 compareExpectedOutput(methodnm, expected);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
792 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
793
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
794 private void Test_FetchSize() {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
795 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
796
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
797 Statement stmt = null;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
798 ResultSet rs = null;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
799 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
800 stmt = con.createStatement();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
801 rs = stmt.executeQuery("SELECT * FROM _tables");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
802
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
803 sb.append("Statement fetch size before set: ").append(stmt.getFetchSize()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
804 sb.append("ResultSet fetch size before set: ").append(rs.getFetchSize()).append("\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
805
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
806 stmt.setFetchSize(40);
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
807 rs.setFetchSize(16384);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
808
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
809 sb.append("Statement fetch size after set: ").append(stmt.getFetchSize()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
810 sb.append("ResultSet fetch size after set: ").append(rs.getFetchSize()).append("\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
811
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
812 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
813 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
814 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
815
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
816 closeStmtResSet(stmt, rs);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
817
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
818 compareExpectedOutput("Test_FetchSize",
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
819 "Statement fetch size before set: 0\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
820 "ResultSet fetch size before set: 250\n" +
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
821 "Statement fetch size after set: 40\n" +
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
822 "ResultSet fetch size after set: 16384\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
823 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
824
447
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
825 private void Test_Int128() {
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
826 sb.setLength(0); // clear the output log buffer
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
827
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
828 Statement stmt = null;
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
829 ResultSet rs = null;
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
830
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
831 // check first if datatype hugeint is supported on this server
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
832 boolean supportsHugeInt = false;
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
833 try {
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
834 stmt = con.createStatement();
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
835 // query sys.types to find out if sql datatype hugeint is supported
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
836 rs = stmt.executeQuery("SELECT sqlname from sys.types where sqlname = 'hugeint';");
478
e239f02fe8b6 Add code to close the resultset after use to free resources on the server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 469
diff changeset
837 if (rs != null) {
e239f02fe8b6 Add code to close the resultset after use to free resources on the server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 469
diff changeset
838 if (rs.next()) {
e239f02fe8b6 Add code to close the resultset after use to free resources on the server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 469
diff changeset
839 if ("hugeint".equals(rs.getString(1)))
e239f02fe8b6 Add code to close the resultset after use to free resources on the server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 469
diff changeset
840 supportsHugeInt = true;
e239f02fe8b6 Add code to close the resultset after use to free resources on the server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 469
diff changeset
841 }
e239f02fe8b6 Add code to close the resultset after use to free resources on the server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 469
diff changeset
842 rs.close();
e239f02fe8b6 Add code to close the resultset after use to free resources on the server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 469
diff changeset
843 rs = null;
447
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
844 }
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
845 } catch (SQLException e) {
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
846 sb.append("FAILED: ").append(e.getMessage()).append("\n");
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
847 }
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
848
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
849 if (!supportsHugeInt) {
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
850 closeStmtResSet(stmt, rs);
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
851 compareExpectedOutput("Test_Int128", "");
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
852 return; // skip the rest of the test
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
853 }
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
854
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
855 // test whether we can represent a full-size int128 as JDBC results
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
856 PreparedStatement insertStatement = null;
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
857 try {
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
858 stmt.executeUpdate("CREATE TABLE HUGEINTT (I HUGEINT)");
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
859 stmt.executeUpdate("CREATE TABLE HUGEDECT (I DECIMAL(38,19))");
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
860
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
861 BigInteger bi = new BigInteger("123456789012345678909876543210987654321");
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
862 BigDecimal bd = new BigDecimal("1234567890123456789.9876543210987654321");
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
863
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
864 insertStatement = con.prepareStatement("INSERT INTO HUGEINTT VALUES (?)");
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
865 insertStatement.setBigDecimal(1, new BigDecimal(bi));
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
866 insertStatement.executeUpdate();
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
867 insertStatement.close();
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
868
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
869 stmt.executeUpdate("INSERT INTO HUGEDECT VALUES (" + bd + ");");
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
870
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
871 rs = stmt.executeQuery("SELECT I FROM HUGEINTT");
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
872 rs.next();
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
873 BigInteger biRes = rs.getBigDecimal(1).toBigInteger();
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
874 rs.close();
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
875 sb.append("Expecting " + bi + ", got " + biRes).append("\n");
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
876 if (!bi.equals(biRes)) {
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
877 sb.append("value of bi is NOT equal to biRes!\n");
447
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
878 }
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
879
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
880 rs = stmt.executeQuery("SELECT I FROM HUGEDECT");
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
881 rs.next();
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
882 BigDecimal bdRes = rs.getBigDecimal(1);
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
883 rs.close();
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
884 sb.append("Expecting " + bd + ", got " + bdRes).append("\n");
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
885 if (!bd.equals(bdRes)) {
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
886 sb.append("value of bd is NOT equal to bdRes!\n");
447
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
887 }
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
888 } catch (SQLException e) {
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
889 sb.append("FAILED: ").append(e.getMessage()).append("\n");
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
890 }
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
891
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
892 // cleanup
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
893 try {
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
894 stmt.executeUpdate("DROP TABLE IF EXISTS HUGEINTT");
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
895 stmt.executeUpdate("DROP TABLE IF EXISTS HUGEDECT");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
896 sb.append("SUCCESS\n");
447
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
897 } catch (SQLException e) {
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
898 sb.append("FAILED: ").append(e.getMessage()).append("\n");
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
899 }
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
900 closeStmtResSet(insertStatement, null);
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
901 closeStmtResSet(stmt, rs);
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
902
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
903 compareExpectedOutput("Test_Int128",
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
904 "Expecting 123456789012345678909876543210987654321, got 123456789012345678909876543210987654321\n" +
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
905 "Expecting 1234567890123456789.9876543210987654321, got 1234567890123456789.9876543210987654321\n" +
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
906 "SUCCESS\n");
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
907 }
7147d1252828 Converted and added Test_Int128() to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 446
diff changeset
908
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
909 private void Test_PSgeneratedkeys() {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
910 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
911
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
912 Statement stmt = null;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
913 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
914 con.setAutoCommit(false);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
915 // >> false: auto commit was just switched off
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
916 sb.append("0. false\t").append(con.getAutoCommit()).append("\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
917
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
918 stmt = con.createStatement();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
919 stmt.executeUpdate(
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
920 "CREATE TABLE psgenkey (" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
921 " id serial," +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
922 " val varchar(20)" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
923 ")");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
924 stmt.close();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
925 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
926 sb.append("FAILED to CREATE TABLE psgenkey: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
927 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
928 closeStmtResSet(stmt, null);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
929
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
930 PreparedStatement pstmt = null;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
931 ResultSet keys = null;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
932 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
933 pstmt = con.prepareStatement(
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
934 "INSERT INTO psgenkey (val) VALUES ('this is a test')",
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
935 Statement.RETURN_GENERATED_KEYS);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
936
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
937 sb.append("1. inserting 3 records...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
938 pstmt.executeUpdate();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
939 pstmt.executeUpdate();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
940 pstmt.executeUpdate();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
941 sb.append("success\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
942
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
943 // now get the generated keys
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
944 sb.append("2. getting generated keys...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
945 keys = pstmt.getGeneratedKeys();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
946 if (keys == null) {
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
947 sb.append("there are no keys!\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
948 } else {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
949 while (keys.next()) {
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
950 sb.append("generated key index: ").append(keys.getInt(1)).append("\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
951 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
952 if (keys.getStatement() == null) {
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
953 sb.append("ResultSet.getStatement() should never return null!\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
954 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
955 keys.close();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
956 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
957 pstmt.close();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
958 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
959 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
960 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
961 closeStmtResSet(pstmt, keys);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
962
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
963 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
964 con.rollback();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
965 // restore default setting
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
966 con.setAutoCommit(true);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
967 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
968 sb.append("FAILED to rollback: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
969 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
970
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
971 compareExpectedOutput("Test_PSgeneratedkeys",
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
972 "0. false false\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
973 "1. inserting 3 records...success\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
974 "2. getting generated keys...generated key index: 3\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
975 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
976
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
977 private void Test_PSgetObject() {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
978 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
979
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
980 Statement stmt = null;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
981 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
982 con.setAutoCommit(false);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
983 // >> false: auto commit was just switched off
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
984 sb.append("0. false\t").append(con.getAutoCommit()).append("\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
985
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
986 stmt = con.createStatement();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
987 sb.append("1. creating test table...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
988 stmt.executeUpdate("CREATE TABLE table_Test_PSgetObject (ti tinyint, si smallint, i int, bi bigint)");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
989 sb.append("success\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
990 stmt.close();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
991 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
992 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
993 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
994 closeStmtResSet(stmt, null);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
995
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
996 PreparedStatement pstmt = null;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
997 ResultSet rs = null;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
998 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
999 sb.append("2a. inserting 3 records as batch...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1000 pstmt = con.prepareStatement("INSERT INTO table_Test_PSgetObject (ti,si,i,bi) VALUES (?,?,?,?)");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1001 pstmt.setShort(1, (short)1);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1002 pstmt.setShort(2, (short)1);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1003 pstmt.setInt (3, 1);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1004 pstmt.setLong(4, (long)1);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1005 pstmt.addBatch();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1006
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1007 pstmt.setShort(1, (short)127);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1008 pstmt.setShort(2, (short)12700);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1009 pstmt.setInt (3, 1270000);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1010 pstmt.setLong(4, (long)127000000);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1011 pstmt.addBatch();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1012
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1013 pstmt.setShort(1, (short)-127);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1014 pstmt.setShort(2, (short)-12700);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1015 pstmt.setInt (3, -1270000);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1016 pstmt.setLong(4, (long)-127000000);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1017 pstmt.addBatch();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1018
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1019 pstmt.executeBatch();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
1020 sb.append(" passed\n");
450
b9f82064fe0c Implemented PreparedStatement.toString() as requested by https://github.com/MonetDB/monetdb-java/issues/8
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 448
diff changeset
1021 sb.append(pstmt.toString()); // test showing prepared statement
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1022
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1023 sb.append("2b. closing PreparedStatement...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1024 pstmt.close();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
1025 sb.append(" passed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1026 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1027 sb.append("FAILED to INSERT data: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1028 while ((e = e.getNextException()) != null)
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1029 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1030 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1031
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1032 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1033 sb.append("3a. selecting records...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1034 pstmt = con.prepareStatement("SELECT ti,si,i,bi FROM table_Test_PSgetObject ORDER BY ti,si,i,bi");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1035 rs = pstmt.executeQuery();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
1036 sb.append(" passed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1037
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1038 while (rs.next()) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1039 // test fix for https://www.monetdb.org/bugzilla/show_bug.cgi?id=4026
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1040 Short ti = (Short) rs.getObject(1);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1041 Short si = (Short) rs.getObject(2);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1042 Integer i = (Integer) rs.getObject(3);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1043 Long bi = (Long) rs.getObject(4);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1044
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
1045 sb.append(" Retrieved row data: ti=").append(ti).append(" si=").append(si).append(" i=").append(i).append(" bi=").append(bi).append("\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1046 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1047
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1048 sb.append("3b. closing ResultSet...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1049 rs.close();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
1050 sb.append(" passed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1051
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1052 sb.append("3c. closing PreparedStatement...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1053 pstmt.close();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
1054 sb.append(" passed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1055 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1056 sb.append("FAILED to RETRIEVE data: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1057 while ((e = e.getNextException()) != null)
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1058 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1059 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1060 closeStmtResSet(pstmt, rs);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1061
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1062 try {
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1063 sb.append("4. Rollback changes...");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1064 con.rollback();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
1065 sb.append(" passed\n");
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1066
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1067 // restore default setting
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1068 con.setAutoCommit(true);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1069 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1070 sb.append("FAILED to rollback: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1071 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1072
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1073 compareExpectedOutput("Test_PSgetObject",
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1074 "0. false false\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1075 "1. creating test table...success\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1076 "2a. inserting 3 records as batch... passed\n" +
450
b9f82064fe0c Implemented PreparedStatement.toString() as requested by https://github.com/MonetDB/monetdb-java/issues/8
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 448
diff changeset
1077 "Prepared SQL: INSERT INTO table_Test_PSgetObject (ti,si,i,bi) VALUES (?,?,?,?)\n" +
b9f82064fe0c Implemented PreparedStatement.toString() as requested by https://github.com/MonetDB/monetdb-java/issues/8
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 448
diff changeset
1078 " parameter 1 tinyint, set value: -127\n" +
b9f82064fe0c Implemented PreparedStatement.toString() as requested by https://github.com/MonetDB/monetdb-java/issues/8
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 448
diff changeset
1079 " parameter 2 smallint, set value: -12700\n" +
b9f82064fe0c Implemented PreparedStatement.toString() as requested by https://github.com/MonetDB/monetdb-java/issues/8
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 448
diff changeset
1080 " parameter 3 int, set value: -1270000\n" +
b9f82064fe0c Implemented PreparedStatement.toString() as requested by https://github.com/MonetDB/monetdb-java/issues/8
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 448
diff changeset
1081 " parameter 4 bigint, set value: -127000000\n" +
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1082 "2b. closing PreparedStatement... passed\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1083 "3a. selecting records... passed\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1084 " Retrieved row data: ti=-127 si=-12700 i=-1270000 bi=-127000000\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1085 " Retrieved row data: ti=1 si=1 i=1 bi=1\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1086 " Retrieved row data: ti=127 si=12700 i=1270000 bi=127000000\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1087 "3b. closing ResultSet... passed\n" +
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1088 "3c. closing PreparedStatement... passed\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1089 "4. Rollback changes... passed\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1090 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1091
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1092 private void Test_PSlargebatchval() {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1093 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1094
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1095 byte[] errorBytes = new byte[] { (byte) 0xe2, (byte) 0x80, (byte) 0xa7 };
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1096 String errorStr = new String(errorBytes, Charset.forName("UTF-8"));
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1097 StringBuilder repeatedErrorStr = new StringBuilder();
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1098 for (int i = 0; i < 8170;i++) {
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1099 repeatedErrorStr.append(errorStr);
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1100 }
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1101 String largeStr = repeatedErrorStr.toString();
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1102
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1103 Statement stmt = null;
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1104 PreparedStatement pstmt = null;
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1105 ResultSet rs = null;
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1106 try {
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1107 // >> true: auto commit should be on
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
1108 sb.append("0. true\t").append(con.getAutoCommit()).append("\n");
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1109
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1110 stmt = con.createStatement();
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1111 sb.append("1. creating test table...");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1112 stmt.execute("CREATE TABLE Test_PSlargebatchval (c INT, a CLOB, b DOUBLE)");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
1113 sb.append("success\n");
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1114
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1115 sb.append("2. prepare insert...");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1116 pstmt = con.prepareStatement("INSERT INTO Test_PSlargebatchval VALUES (?,?,?)");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
1117 sb.append("success\n");
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1118
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1119 pstmt.setLong(1, 1L);
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1120 pstmt.setString(2, largeStr);
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1121 pstmt.setDouble(3, 1.0);
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1122 pstmt.addBatch();
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1123 pstmt.executeBatch();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
1124 sb.append("3. inserted 1 large string\n");
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1125
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1126 /* test issue reported at https://www.monetdb.org/bugzilla/show_bug.cgi?id=3470 */
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1127 pstmt.setLong(1, -2L);
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1128 pstmt.setClob(2, new StringReader(largeStr));
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1129 pstmt.setDouble(3, -2.0);
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1130 pstmt.addBatch();
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1131 pstmt.executeBatch();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
1132 sb.append("4. inserted 1 large clob via StringReader() object\n");
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1133
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1134 Clob myClob = con.createClob();
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1135 myClob.setString(1L, largeStr);
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1136
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1137 pstmt.setLong(1, 123456789L);
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1138 pstmt.setClob(2, myClob);
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1139 pstmt.setDouble(3, 12345678901.98765);
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1140 pstmt.addBatch();
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1141 pstmt.executeBatch();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
1142 sb.append("5. inserted 1 large clob via createClob() object\n");
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1143
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1144 pstmt.close();
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1145
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1146 sb.append("6. select count(*)... ");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1147 rs = stmt.executeQuery("SELECT COUNT(*) FROM Test_PSlargebatchval");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1148 if (rs.next())
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
1149 sb.append(rs.getInt(1)).append(" rows inserted.\n");
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1150 rs.close();
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1151
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1152 sb.append("7. drop table...");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1153 stmt.execute("DROP TABLE Test_PSlargebatchval");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
1154 sb.append("success\n");
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1155 stmt.close();
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1156 } catch (SQLException e) {
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1157 sb.append("FAILED: ").append(e.getMessage()).append("\n");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1158 while ((e = e.getNextException()) != null)
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1159 sb.append("FAILED: ").append(e.getMessage()).append("\n");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1160 }
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1161 closeStmtResSet(stmt, rs);
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1162 closeStmtResSet(pstmt, null);
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1163
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1164 compareExpectedOutput("Test_PSlargebatchval",
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1165 "0. true true\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1166 "1. creating test table...success\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1167 "2. prepare insert...success\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1168 "3. inserted 1 large string\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1169 "4. inserted 1 large clob via StringReader() object\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1170 "5. inserted 1 large clob via createClob() object\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1171 "6. select count(*)... 3 rows inserted.\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1172 "7. drop table...success\n");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1173 }
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1174
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1175 private void Test_PSlargeresponse(String conURL) {
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1176 sb.setLength(0); // clear the output log buffer
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1177
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1178 PreparedStatement pstmt = null;
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1179 try {
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1180 sb.append("1. DatabaseMetadata environment retrieval... ");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1181
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1182 // retrieve this to simulate a bug report
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1183 DatabaseMetaData dbmd = con.getMetaData();
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1184 if (conURL.startsWith(dbmd.getURL()))
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1185 sb.append("oke");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1186 else
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
1187 sb.append("not oke ").append(dbmd.getURL());
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1188 sb.append("\n");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1189
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1190 pstmt = con.prepareStatement("select * from columns");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1191 sb.append("2. empty call...");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1192 // should succeed (no arguments given)
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1193 pstmt.execute();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
1194 sb.append(" passed\n");
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1195 } catch (SQLException e) {
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1196 sb.append("FAILED: ").append(e.getMessage()).append("\n");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1197 }
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1198 closeStmtResSet(pstmt, null);
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1199
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1200 compareExpectedOutput("Test_PSlargeresponse",
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1201 "1. DatabaseMetadata environment retrieval... oke\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1202 "2. empty call... passed\n");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1203 }
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1204
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1205 private void Test_PSmanycon(String arg0) {
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1206 sb.setLength(0); // clear the output log buffer
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1207
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1208 final int maxCons = 60; // default max_clients is 64, 2 connections are already open from this program
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1209 List<PreparedStatement> pss = new ArrayList<PreparedStatement>(maxCons); // PreparedStatements go in here
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1210
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1211 try {
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1212 // spawn a lot of Connections with 1 PreparedStatement, just for fun...
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1213 int i = 1;
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1214 sb.append("Establishing Connection ");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1215 for (; i <= maxCons; i++) {
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1216 sb.append(i);
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1217 Connection conx = DriverManager.getConnection(arg0);
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1218 sb.append(",");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1219
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1220 // do something with the connection to test if it works
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1221 PreparedStatement pstmt = conx.prepareStatement("select " + i);
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1222 sb.append(" ");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1223
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1224 pss.add(pstmt);
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1225 }
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1226 sb.append("\n");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1227
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1228 // now try to nicely execute them
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1229 i = 1;
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1230 sb.append("Executing PreparedStatement\n");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1231 for (Iterator<PreparedStatement> it = pss.iterator(); it.hasNext(); i++) {
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1232 PreparedStatement pstmt = it.next();
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1233
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1234 // see if the connection still works
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1235 sb.append(i).append("...");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1236 if (!pstmt.execute())
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1237 sb.append("should have seen a ResultSet!");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1238
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1239 ResultSet rs = pstmt.getResultSet();
488
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
1240 if (rs != null) {
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
1241 if (!rs.next())
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
1242 sb.append("ResultSet is empty");
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
1243 sb.append(" result: ").append(rs.getString(1));
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
1244 }
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1245
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1246 // close the connection and associated resources
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1247 pstmt.getConnection().close();
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1248 sb.append(", closed. ");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1249
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1250 if (i % 5 == 0) {
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1251 // inject a failed transaction
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1252 Connection conZZ = DriverManager.getConnection(arg0);
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1253 Statement stmt = con.createStatement();
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1254 try {
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1255 int affrows = stmt.executeUpdate("update foo where bar is wrong");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1256 sb.append("oops, faulty statement just got through");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1257 } catch (SQLException e) {
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1258 sb.append("Forced transaction failure");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1259 }
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1260 sb.append("\n");
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1261 closeStmtResSet(stmt, null);
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1262 conZZ.close();
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1263 }
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1264 }
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1265 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1266 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1267 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1268
399
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1269 compareExpectedOutput("Test_PSmanycon",
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1270 "Establishing Connection 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, " +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1271 "11, 12, 13, 14, 15, 16, 17, 18, 19, 20, " +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1272 "21, 22, 23, 24, 25, 26, 27, 28, 29, 30, " +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1273 "31, 32, 33, 34, 35, 36, 37, 38, 39, 40, " +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1274 "41, 42, 43, 44, 45, 46, 47, 48, 49, 50, " +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1275 "51, 52, 53, 54, 55, 56, 57, 58, 59, 60, \n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1276 "Executing PreparedStatement\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1277 "1... result: 1, closed. 2... result: 2, closed. 3... result: 3, closed. 4... result: 4, closed. 5... result: 5, closed. Forced transaction failure\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1278 "6... result: 6, closed. 7... result: 7, closed. 8... result: 8, closed. 9... result: 9, closed. 10... result: 10, closed. Forced transaction failure\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1279 "11... result: 11, closed. 12... result: 12, closed. 13... result: 13, closed. 14... result: 14, closed. 15... result: 15, closed. Forced transaction failure\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1280 "16... result: 16, closed. 17... result: 17, closed. 18... result: 18, closed. 19... result: 19, closed. 20... result: 20, closed. Forced transaction failure\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1281 "21... result: 21, closed. 22... result: 22, closed. 23... result: 23, closed. 24... result: 24, closed. 25... result: 25, closed. Forced transaction failure\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1282 "26... result: 26, closed. 27... result: 27, closed. 28... result: 28, closed. 29... result: 29, closed. 30... result: 30, closed. Forced transaction failure\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1283 "31... result: 31, closed. 32... result: 32, closed. 33... result: 33, closed. 34... result: 34, closed. 35... result: 35, closed. Forced transaction failure\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1284 "36... result: 36, closed. 37... result: 37, closed. 38... result: 38, closed. 39... result: 39, closed. 40... result: 40, closed. Forced transaction failure\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1285 "41... result: 41, closed. 42... result: 42, closed. 43... result: 43, closed. 44... result: 44, closed. 45... result: 45, closed. Forced transaction failure\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1286 "46... result: 46, closed. 47... result: 47, closed. 48... result: 48, closed. 49... result: 49, closed. 50... result: 50, closed. Forced transaction failure\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1287 "51... result: 51, closed. 52... result: 52, closed. 53... result: 53, closed. 54... result: 54, closed. 55... result: 55, closed. Forced transaction failure\n" +
addb345e4fa8 Changed test 'getIndexInfo(null, sys, table_types, false, false)' to resolve difference (9 instead of 10) reported on testweb for default branch.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 395
diff changeset
1288 "56... result: 56, closed. 57... result: 57, closed. 58... result: 58, closed. 59... result: 59, closed. 60... result: 60, closed. Forced transaction failure\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1289 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1290
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1291 private void Test_PSmetadata() {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1292 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1293
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1294 Statement stmt = null;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1295 try {
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1296 con.setAutoCommit(false);
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1297 // >> false: auto commit was just switched off
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
1298 sb.append("0. false\t").append(con.getAutoCommit()).append("\n");
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1299
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1300 stmt = con.createStatement();
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1301 int updates = 0;
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1302 updates = stmt.executeUpdate("CREATE TABLE table_Test_PSmetadata ( myint int, mydouble double, mybool boolean, myvarchar varchar(15), myclob clob )");
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
1303 if (updates != Statement.SUCCESS_NO_INFO)
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1304 sb.append("1. Expected -2 got ").append(updates).append(" instead\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1305
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1306 // all NULLs
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1307 updates = stmt.executeUpdate("INSERT INTO table_Test_PSmetadata VALUES (NULL, NULL, NULL, NULL, NULL)");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1308 if (updates != 1)
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1309 sb.append("2a. Expected 1 got ").append(updates).append(" instead\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1310
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1311 // all filled in
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1312 updates = stmt.executeUpdate("INSERT INTO table_Test_PSmetadata VALUES (2 , 3.0, true, 'A string', 'bla bla bla')");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1313 if (updates != 1)
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1314 sb.append("2b. Expected 1 got ").append(updates).append(" instead\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1315 } catch (SQLException e) {
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1316 sb.append("FAILED: ").append(e.getMessage()).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1317 }
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1318 closeStmtResSet(stmt, null);
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1319
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1320 PreparedStatement pstmt = null;
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1321 try {
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1322 pstmt = con.prepareStatement("SELECT CASE WHEN myint IS NULL THEN 0 ELSE 1 END AS intnull, * FROM table_Test_PSmetadata WHERE myint = ?");
450
b9f82064fe0c Implemented PreparedStatement.toString() as requested by https://github.com/MonetDB/monetdb-java/issues/8
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 448
diff changeset
1323 sb.append(pstmt.toString()); // test showing prepared statement
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1324
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1325 // testing and showing result set meta data
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1326 ResultSetMetaData rsmd = pstmt.getMetaData();
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1327 sb.append("rsmd. ").append(rsmd.getColumnCount()).append(" columns:\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1328 for (int col = 1; col <= rsmd.getColumnCount(); col++) {
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1329 sb.append("RCol ").append(col).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1330 sb.append(" classname ").append(rsmd.getColumnClassName(col)).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1331 sb.append(" displaysize ").append(rsmd.getColumnDisplaySize(col)).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1332 sb.append(" label ").append(rsmd.getColumnLabel(col)).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1333 sb.append(" name ").append(rsmd.getColumnName(col)).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1334 sb.append(" type ").append(rsmd.getColumnType(col)).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1335 sb.append(" typename ").append(rsmd.getColumnTypeName(col)).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1336 sb.append(" precision ").append(rsmd.getPrecision(col)).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1337 sb.append(" scale ").append(rsmd.getScale(col)).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1338 sb.append(" catalogname ").append(rsmd.getCatalogName(col)).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1339 sb.append(" schemaname ").append(rsmd.getSchemaName(col)).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1340 sb.append(" tablename ").append(rsmd.getTableName(col)).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1341 sb.append(" autoincrement ").append(rsmd.isAutoIncrement(col)).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1342 sb.append(" casesensitive ").append(rsmd.isCaseSensitive(col)).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1343 sb.append(" currency ").append(rsmd.isCurrency(col)).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1344 sb.append(" defwritable ").append(rsmd.isDefinitelyWritable(col)).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1345 sb.append(" nullable ").append(rsmd.isNullable(col)).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1346 sb.append(" readonly ").append(rsmd.isReadOnly(col)).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1347 sb.append(" searchable ").append(rsmd.isSearchable(col)).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1348 sb.append(" signed ").append(rsmd.isSigned(col)).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1349 sb.append(" writable ").append(rsmd.isWritable(col)).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1350 }
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1351
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1352 showParams(pstmt);
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1353
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1354 con.rollback();
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1355 con.setAutoCommit(true);
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1356 // >> true: auto commit was just switched on
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
1357 sb.append("0. true\t").append(con.getAutoCommit()).append("\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1358 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1359 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1360 }
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1361 closeStmtResSet(pstmt, null);
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1362
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1363 compareExpectedOutput("Test_PSmetadata",
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1364 "0. false\tfalse\n" +
450
b9f82064fe0c Implemented PreparedStatement.toString() as requested by https://github.com/MonetDB/monetdb-java/issues/8
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 448
diff changeset
1365 "Prepared SQL: SELECT CASE WHEN myint IS NULL THEN 0 ELSE 1 END AS intnull, * FROM table_Test_PSmetadata WHERE myint = ?\n" +
b9f82064fe0c Implemented PreparedStatement.toString() as requested by https://github.com/MonetDB/monetdb-java/issues/8
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 448
diff changeset
1366 " parameter 1 int, set value: <null>\n" +
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1367 "rsmd. 6 columns:\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1368 "RCol 1\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1369 " classname java.lang.Short\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1370 " displaysize 8\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1371 " label intnull\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1372 " name intnull\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1373 " type -6\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1374 " typename tinyint\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1375 " precision 8\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1376 " scale 0\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1377 " catalogname null\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1378 " schemaname \n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1379 " tablename \n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1380 " autoincrement false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1381 " casesensitive false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1382 " currency false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1383 " defwritable false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1384 " nullable 2\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1385 " readonly true\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1386 " searchable true\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1387 " signed true\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1388 " writable false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1389 "RCol 2\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1390 " classname java.lang.Integer\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1391 " displaysize 32\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1392 " label myint\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1393 " name myint\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1394 " type 4\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1395 " typename int\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1396 " precision 32\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1397 " scale 0\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1398 " catalogname null\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1399 " schemaname \n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1400 " tablename table_test_psmetadata\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1401 " autoincrement false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1402 " casesensitive false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1403 " currency false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1404 " defwritable false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1405 " nullable 2\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1406 " readonly true\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1407 " searchable true\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1408 " signed true\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1409 " writable false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1410 "RCol 3\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1411 " classname java.lang.Double\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1412 " displaysize 53\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1413 " label mydouble\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1414 " name mydouble\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1415 " type 8\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1416 " typename double\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1417 " precision 53\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1418 " scale 0\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1419 " catalogname null\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1420 " schemaname \n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1421 " tablename table_test_psmetadata\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1422 " autoincrement false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1423 " casesensitive false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1424 " currency false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1425 " defwritable false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1426 " nullable 2\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1427 " readonly true\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1428 " searchable true\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1429 " signed true\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1430 " writable false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1431 "RCol 4\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1432 " classname java.lang.Boolean\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1433 " displaysize 1\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1434 " label mybool\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1435 " name mybool\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1436 " type 16\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1437 " typename boolean\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1438 " precision 1\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1439 " scale 0\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1440 " catalogname null\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1441 " schemaname \n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1442 " tablename table_test_psmetadata\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1443 " autoincrement false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1444 " casesensitive false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1445 " currency false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1446 " defwritable false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1447 " nullable 2\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1448 " readonly true\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1449 " searchable true\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1450 " signed false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1451 " writable false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1452 "RCol 5\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1453 " classname java.lang.String\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1454 " displaysize 15\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1455 " label myvarchar\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1456 " name myvarchar\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1457 " type 12\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1458 " typename varchar\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1459 " precision 15\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1460 " scale 0\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1461 " catalogname null\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1462 " schemaname \n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1463 " tablename table_test_psmetadata\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1464 " autoincrement false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1465 " casesensitive true\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1466 " currency false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1467 " defwritable false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1468 " nullable 2\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1469 " readonly true\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1470 " searchable true\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1471 " signed false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1472 " writable false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1473 "RCol 6\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1474 " classname java.lang.String\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1475 " displaysize 0\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1476 " label myclob\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1477 " name myclob\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1478 " type 12\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1479 " typename clob\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1480 " precision 0\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1481 " scale 0\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1482 " catalogname null\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1483 " schemaname \n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1484 " tablename table_test_psmetadata\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1485 " autoincrement false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1486 " casesensitive true\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1487 " currency false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1488 " defwritable false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1489 " nullable 2\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1490 " readonly true\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1491 " searchable true\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1492 " signed false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1493 " writable false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1494 "pmd. 1 parameters:\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1495 "Param 1\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1496 " nullable 2 (UNKNOWN)\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1497 " signed true\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1498 " precision 32\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1499 " scale 0\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1500 " type 4\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1501 " typename int\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1502 " classname java.lang.Integer\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1503 " mode 1 (IN)\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1504 "0. true\ttrue\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1505 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1506
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1507 private void Test_PSsomeamount() {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1508 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1509
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1510 PreparedStatement pstmt = null;
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1511 ResultSet rs = null;
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1512 try {
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1513 // >> true: auto commit should be on
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
1514 sb.append("0. true\t").append(con.getAutoCommit()).append("\n");
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1515
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
1516 sb.append("1. Preparing and executing a unique statement\n");
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1517 for (int i = 0; i < 120; i++) {
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1518 pstmt = con.prepareStatement("select " + i + ", " + i + " = ?");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1519 pstmt.setInt(1, i);
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1520 rs = pstmt.executeQuery();
488
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
1521 if (rs != null && rs.next() && i % 20 == 0) {
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1522 sb.append(rs.getInt(1)).append(", ").append(rs.getBoolean(2)).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1523 }
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1524 /* next call should cause resources on the server to be freed */
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1525 pstmt.close();
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1526 }
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1527 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1528 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1529 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1530
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1531 closeStmtResSet(pstmt, rs);
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1532
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1533 compareExpectedOutput("Test_PSsomeamount",
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1534 "0. true true\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1535 "1. Preparing and executing a unique statement\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1536 "0, true\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1537 "20, true\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1538 "40, true\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1539 "60, true\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1540 "80, true\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1541 "100, true\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1542 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1543
464
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1544 /* Create a lot of PreparedStatements, to emulate webloads such as those from Hibernate. */
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1545 /* this test is same as Test_PSsomeamount() but for many more PreparedStatements to stress the server */
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1546 private void Test_PSlargeamount() {
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1547 sb.setLength(0); // clear the output log buffer
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1548
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1549 PreparedStatement pstmt = null;
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1550 ResultSet rs = null;
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1551 try {
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1552 // >> true: auto commit should be on
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1553 sb.append("0. true\t").append(con.getAutoCommit()).append("\n");
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1554
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1555 sb.append("1. Preparing and executing a unique statement\n");
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1556 for (int i = 0; i < 50001; i++) {
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1557 pstmt = con.prepareStatement("select " + i + ", " + i + " = ?");
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1558 pstmt.setInt(1, i);
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1559 rs = pstmt.executeQuery();
488
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
1560 if (rs != null && rs.next() && i % 1000 == 0) {
464
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1561 sb.append(rs.getInt(1)).append(", ").append(rs.getBoolean(2)).append("\n");
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1562 }
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1563 /* next call should cause resources on the server to be freed */
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1564 pstmt.close();
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1565 }
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1566 } catch (SQLException e) {
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1567 sb.append("FAILED: ").append(e.getMessage()).append("\n");
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1568 }
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1569
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1570 closeStmtResSet(pstmt, rs);
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1571
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1572 compareExpectedOutput("Test_PSlargeamount",
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1573 "0. true true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1574 "1. Preparing and executing a unique statement\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1575 "0, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1576 "1000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1577 "2000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1578 "3000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1579 "4000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1580 "5000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1581 "6000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1582 "7000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1583 "8000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1584 "9000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1585 "10000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1586 "11000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1587 "12000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1588 "13000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1589 "14000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1590 "15000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1591 "16000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1592 "17000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1593 "18000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1594 "19000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1595 "20000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1596 "21000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1597 "22000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1598 "23000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1599 "24000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1600 "25000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1601 "26000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1602 "27000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1603 "28000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1604 "29000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1605 "30000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1606 "31000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1607 "32000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1608 "33000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1609 "34000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1610 "35000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1611 "36000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1612 "37000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1613 "38000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1614 "39000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1615 "40000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1616 "41000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1617 "42000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1618 "43000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1619 "44000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1620 "45000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1621 "46000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1622 "47000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1623 "48000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1624 "49000, true\n" +
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1625 "50000, true\n");
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1626 }
3e28de1c4f81 Convert and add Test_PSlargeamount to JDBC_API_Tester.java.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 463
diff changeset
1627
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1628 private void Test_PSsqldata() {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1629 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1630
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1631 Statement stmt = null;
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1632 PreparedStatement pstmt = null;
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1633 ResultSet rs = null;
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1634 try {
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1635 con.setAutoCommit(false);
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1636 // >> false: auto commit should be off now
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
1637 sb.append("0. false\t").append(con.getAutoCommit()).append("\n");
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1638
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1639 stmt = con.createStatement();
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1640 int updates = stmt.executeUpdate("CREATE TABLE table_Test_PSsqldata ( myinet inet, myurl url )");
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
1641 if (updates != Statement.SUCCESS_NO_INFO)
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1642 sb.append("1. Expected -2 got ").append(updates).append(" instead\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1643
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1644 pstmt = con.prepareStatement("INSERT INTO table_Test_PSsqldata VALUES (?, ?)");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1645 ParameterMetaData pmd = pstmt.getParameterMetaData();
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1646 sb.append(pmd.getParameterCount()).append(" parameters:\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1647 for (int parm = 1; parm <= pmd.getParameterCount(); parm++) {
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1648 sb.append("Parm ").append(parm).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1649 sb.append(" type ").append(pmd.getParameterType(parm)).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1650 sb.append(" typename ").append(pmd.getParameterTypeName(parm)).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1651 sb.append(" classname ").append(pmd.getParameterClassName(parm)).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1652 }
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1653
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1654 INET tinet = new INET();
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1655 tinet.fromString("172.5.5.5/24");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1656
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1657 URL turl = new URL();
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1658 try {
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1659 turl.fromString("http://www.monetdb.org/");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1660 } catch (Exception e) {
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1661 sb.append("conversion failed: ").append(e.getMessage()).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1662 }
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1663 pstmt.setObject(1, tinet);
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1664 pstmt.setObject(2, turl);
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1665 // insert first record
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1666 pstmt.execute();
450
b9f82064fe0c Implemented PreparedStatement.toString() as requested by https://github.com/MonetDB/monetdb-java/issues/8
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 448
diff changeset
1667 sb.append(pstmt.toString()); // test showing prepared statement
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1668
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1669 try {
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1670 tinet.setNetmaskBits(16);
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1671 } catch (Exception e) {
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1672 sb.append("setNetmaskBits failed: ").append(e.getMessage()).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1673 }
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1674 // insert second record
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1675 pstmt.execute();
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1676
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1677 rs = stmt.executeQuery("SELECT * FROM table_Test_PSsqldata");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1678 ResultSetMetaData rsmd = rs.getMetaData();
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1679 for (int i = 1; rs.next(); i++) {
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1680 for (int col = 1; col <= rsmd.getColumnCount(); col++) {
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1681 Object x = rs.getObject(col);
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1682 if (x == null || rs.wasNull()) {
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
1683 sb.append(i).append(".\t<null>\n");
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1684 } else {
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1685 sb.append(i).append(".\t").append(x.toString()).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1686 if (x instanceof INET) {
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1687 INET inet = (INET)x;
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1688 sb.append(" ").append(inet.getAddress()).append("/").append(inet.getNetmaskBits()).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1689 sb.append(" ").append(inet.getInetAddress().toString()).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1690 } else if (x instanceof URL) {
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1691 URL url = (URL)x;
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1692 sb.append(" ").append(url.getURL().toString()).append("\n");
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1693 }
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1694 }
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1695 }
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1696 }
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1697 con.rollback();
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1698 con.setAutoCommit(true);
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1699 // >> true: auto commit was just switched on
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
1700 sb.append("0. true\t").append(con.getAutoCommit()).append("\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1701 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1702 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1703 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1704
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1705 closeStmtResSet(stmt, rs);
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1706 closeStmtResSet(pstmt, null);
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1707
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1708 compareExpectedOutput("Test_PSsqldata",
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1709 "0. false false\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1710 "2 parameters:\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1711 "Parm 1\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1712 " type 12\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1713 " typename inet\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1714 " classname org.monetdb.jdbc.types.INET\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1715 "Parm 2\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1716 " type 12\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1717 " typename url\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1718 " classname org.monetdb.jdbc.types.URL\n" +
450
b9f82064fe0c Implemented PreparedStatement.toString() as requested by https://github.com/MonetDB/monetdb-java/issues/8
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 448
diff changeset
1719 "Prepared SQL: INSERT INTO table_Test_PSsqldata VALUES (?, ?)\n" +
b9f82064fe0c Implemented PreparedStatement.toString() as requested by https://github.com/MonetDB/monetdb-java/issues/8
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 448
diff changeset
1720 " parameter 1 inet, set value: inet '172.5.5.5/24'\n" +
b9f82064fe0c Implemented PreparedStatement.toString() as requested by https://github.com/MonetDB/monetdb-java/issues/8
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 448
diff changeset
1721 " parameter 2 url, set value: url 'http://www.monetdb.org/'\n" +
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1722 "1. 172.5.5.5/24\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1723 " 172.5.5.5/24\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1724 " /172.5.5.5\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1725 "1. http://www.monetdb.org/\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1726 " http://www.monetdb.org/\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1727 "2. 172.5.5.5/24\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1728 " 172.5.5.5/24\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1729 " /172.5.5.5\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1730 "2. http://www.monetdb.org/\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1731 " http://www.monetdb.org/\n" +
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
1732 "0. true true\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1733 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1734
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1735 private void Test_PStimedate() {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1736 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1737
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1738 Statement stmt = null;
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1739 PreparedStatement pstmt = null;
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1740 ResultSet rs = null;
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1741 try {
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1742 con.setAutoCommit(false);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1743 // >> false: auto commit should be off now
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
1744 sb.append("0. false\t").append(con.getAutoCommit()).append("\n");
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1745
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1746 stmt = con.createStatement();
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1747 int updates = stmt.executeUpdate("CREATE TABLE Test_PStimedate (t time, ts timestamp, d date)");
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
1748 if (updates != Statement.SUCCESS_NO_INFO)
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1749 sb.append("1. Expected -2 got ").append(updates).append(" instead\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1750
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1751 pstmt = con.prepareStatement("INSERT INTO Test_PStimedate VALUES (?, ?, ?)");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1752 sb.append("1. empty call...");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1753 try {
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1754 // should fail (as no parameters set)
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1755 pstmt.execute();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1756 sb.append(" UNexpected PASS!\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1757 } catch (SQLException e) {
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1758 sb.append(" expected exception\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1759 }
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1760
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1761 sb.append("2. inserting a record...");
488
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
1762 final java.util.Date d = new java.util.Date();
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
1763 final long tm = d.getTime();
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
1764 pstmt.setTime(1, new java.sql.Time(tm));
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
1765 pstmt.setTimestamp(2, new java.sql.Timestamp(tm));
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
1766 pstmt.setDate(3, new java.sql.Date(tm));
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1767
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1768 pstmt.executeUpdate();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1769 sb.append(" passed\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1770
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1771 sb.append("3. closing PreparedStatement...");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1772 pstmt.close();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1773 sb.append(" passed\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1774
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1775 sb.append("4. selecting record...");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1776 pstmt = con.prepareStatement("SELECT * FROM Test_PStimedate");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1777 rs = pstmt.executeQuery();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1778 sb.append(" passed\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1779
488
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
1780 while (rs != null && rs.next()) {
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1781 for (int j = 1; j <= 3; j++) {
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
1782 sb.append((j+4)).append(". retrieving...");
488
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
1783 Object x = rs.getObject(j);
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1784 boolean matches = false;
488
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
1785 if (x instanceof java.sql.Time) {
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1786 sb.append(" (Time)");
488
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
1787 matches = (new java.sql.Time(tm)).toString().equals(x.toString());
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
1788 } else if (x instanceof java.sql.Date) {
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1789 sb.append(" (Date)");
488
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
1790 matches = (new java.sql.Date(tm)).toString().equals(x.toString());
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
1791 } else if (x instanceof java.sql.Timestamp) {
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1792 sb.append(" (Timestamp)");
488
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
1793 matches = (new java.sql.Timestamp(tm)).toString().equals(x.toString());
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1794 }
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1795 if (matches) {
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1796 sb.append(" passed\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1797 } else {
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
1798 sb.append(" FAILED (").append(x).append(" is not ").append(d).append(")\n");
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1799 }
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1800 }
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1801 }
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1802
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1803 con.rollback();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1804 con.setAutoCommit(true);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1805 // >> true: auto commit was just switched on
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
1806 sb.append("0. true\t").append(con.getAutoCommit()).append("\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1807 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1808 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1809 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1810
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1811 closeStmtResSet(stmt, null);
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1812 closeStmtResSet(pstmt, rs);
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1813
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1814 compareExpectedOutput("Test_PStimedate",
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1815 "0. false false\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1816 "1. empty call... expected exception\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1817 "2. inserting a record... passed\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1818 "3. closing PreparedStatement... passed\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1819 "4. selecting record... passed\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1820 "5. retrieving... (Time) passed\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1821 "6. retrieving... (Timestamp) passed\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1822 "7. retrieving... (Date) passed\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1823 "0. true true\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1824 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1825
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1826 private void Test_PStimezone() {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1827 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1828
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1829 // make sure this test is reproducable regardless timezone
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1830 // setting, by overriding the VM's default
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1831 // we have to make sure that one doesn't have daylight
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1832 // savings corrections
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1833 TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1834
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1835 Statement stmt = null;
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1836 PreparedStatement pstmt = null;
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1837 ResultSet rs = null;
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1838 try {
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1839 con.setAutoCommit(false);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1840 // >> false: auto commit should be off now
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
1841 sb.append("0. false\t").append(con.getAutoCommit()).append("\n");
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1842
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1843 stmt = con.createStatement();
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1844 int updates = stmt.executeUpdate("CREATE TABLE Test_PStimezone (ts timestamp, tsz timestamp with time zone, t time, tz time with time zone)");
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
1845 if (updates != Statement.SUCCESS_NO_INFO)
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1846 sb.append("1. Expected -2 got ").append(updates).append(" instead\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1847
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1848 pstmt = con.prepareStatement("INSERT INTO Test_PStimezone VALUES (?, ?, ?, ?)");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1849 sb.append("1. empty call...");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1850 try {
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1851 // should fail (as no parameters set)
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1852 pstmt.execute();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1853 sb.append(" UNexpected PASS!\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1854 } catch (SQLException e) {
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1855 sb.append(" expected exception\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1856 }
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1857
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1858 sb.append("2. inserting records...\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1859 java.sql.Timestamp ts = new java.sql.Timestamp(0L);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1860 java.sql.Time t = new java.sql.Time(0L);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1861 Calendar c = Calendar.getInstance();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1862 SimpleDateFormat tsz = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSSZ");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1863 SimpleDateFormat tz = new SimpleDateFormat("HH:mm:ss.SSSZ");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1864
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1865 tsz.setTimeZone(c.getTimeZone());
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1866 tz.setTimeZone(tsz.getTimeZone());
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1867 sb.append("inserting (").append(c.getTimeZone().getID()).append(") ").append(tsz.format(ts)).append(", ").append(tz.format(t)).append("\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1868
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1869 pstmt.setTimestamp(1, ts);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1870 pstmt.setTimestamp(2, ts);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1871 pstmt.setTime(3, t);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1872 pstmt.setTime(4, t);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1873 pstmt.executeUpdate();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1874
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1875 c.setTimeZone(TimeZone.getTimeZone("UTC"));
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1876 sb.append("inserting with calendar timezone ").append(c.getTimeZone().getID()).append("\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1877 pstmt.setTimestamp(1, ts, c);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1878 pstmt.setTimestamp(2, ts, c);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1879 pstmt.setTime(3, t, c);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1880 pstmt.setTime(4, t, c);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1881 pstmt.executeUpdate();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1882
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1883 c.setTimeZone(TimeZone.getTimeZone("America/Los_Angeles"));
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
1884 sb.append("inserting with calendar timezone ").append(c.getTimeZone().getID()).append("\n");
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1885 pstmt.setTimestamp(1, ts, c);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1886 pstmt.setTimestamp(2, ts);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1887 pstmt.setTime(3, t, c);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1888 pstmt.setTime(4, t);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1889 pstmt.executeUpdate();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1890
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1891 c.setTimeZone(TimeZone.getTimeZone("GMT+04:15"));
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
1892 sb.append("inserting with calendar timezone ").append(c.getTimeZone().getID()).append("\n");
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1893 pstmt.setTimestamp(1, ts);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1894 pstmt.setTimestamp(2, ts, c);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1895 pstmt.setTime(3, t);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1896 pstmt.setTime(4, t, c);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1897 pstmt.executeUpdate();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1898 sb.append(" done\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1899
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1900 sb.append("3. closing PreparedStatement...");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1901 pstmt.close();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1902 sb.append(" passed\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1903
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1904 sb.append("4. selecting records...");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1905 pstmt = con.prepareStatement("SELECT * FROM Test_PStimezone");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1906 rs = pstmt.executeQuery();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1907 sb.append(" passed\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1908
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1909 // The tz fields should basically always be the same
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1910 // (exactly 1st Jan 1970) since whatever timezone is used,
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1911 // the server retains it, and Java restores it.
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1912 // The zoneless fields will show differences since the time
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1913 // is inserted translated to the given timezones, and
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1914 // retrieved as in they were given in those timezones.
463
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1915 // When the insert zone matches the retrieve zone, Java should
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1916 // eventually see 1st Jan 1970.
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1917 while (rs.next()) {
463
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1918 sb.append("retrieved row (String):\n")
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1919 .append(rs.getString("ts")).append(" | ")
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1920 // .append(rs.getString("tsz")).append(" | ") -- this values changes when summer or wintertime changes so no stable output
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1921 .append(rs.getString("t")).append(" | ")
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1922 // .append(rs.getString("tz")) -- this values changes when summer or wintertime changes so no stable output
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1923 .append("\n");
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1924
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1925 tsz.setTimeZone(TimeZone.getDefault());
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1926 tz.setTimeZone(tsz.getTimeZone());
463
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1927 sb.append("default (").append(tsz.getTimeZone().getID()).append("):\n")
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1928 .append(tsz.format(rs.getTimestamp("ts"))).append(" | ")
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1929 .append(tsz.format(rs.getTimestamp("tsz"))).append(" | ")
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1930 .append(tz.format(rs.getTime("t"))).append(" | ")
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1931 .append(tz.format(rs.getTime("tz"))).append("\n");
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1932
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1933 c.setTimeZone(TimeZone.getTimeZone("America/Los_Angeles"));
463
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1934 sb.append(c.getTimeZone().getID()).append(":\n")
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1935 .append(rs.getTimestamp("ts", c)).append(" | ")
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1936 .append(rs.getTimestamp("tsz", c)).append(" | ")
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1937 .append(rs.getTime("t", c)).append(" | ")
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1938 .append(rs.getTime("tz", c)).append("\n");
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1939
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1940 c.setTimeZone(TimeZone.getTimeZone("Africa/Windhoek"));
463
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1941 sb.append(c.getTimeZone().getID()).append(":\n")
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1942 .append(rs.getTimestamp("ts", c)).append(" | ")
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1943 .append(rs.getTimestamp("tsz", c)).append(" | ")
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1944 .append(rs.getTime("t", c)).append(" | ")
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1945 .append(rs.getTime("tz", c)).append("\n");
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1946
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1947 SQLWarning w = rs.getWarnings();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1948 while (w != null) {
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1949 sb.append(w.getMessage()).append("\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1950 w = w.getNextWarning();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1951 }
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1952 }
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1953
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1954 con.rollback();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1955 con.setAutoCommit(true);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1956 // >> true: auto commit was just switched on
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
1957 sb.append("0. true\t").append(con.getAutoCommit()).append("\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1958 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1959 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1960 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1961
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1962 closeStmtResSet(stmt, null);
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1963 closeStmtResSet(pstmt, rs);
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
1964
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1965 compareExpectedOutput("Test_PStimezone",
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1966 "0. false false\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1967 "1. empty call... expected exception\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1968 "2. inserting records...\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1969 "inserting (UTC) 1970-01-01 00:00:00.000+0000, 00:00:00.000+0000\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1970 "inserting with calendar timezone UTC\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1971 "inserting with calendar timezone America/Los_Angeles\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1972 "inserting with calendar timezone GMT+04:15\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1973 " done\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1974 "3. closing PreparedStatement... passed\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1975 "4. selecting records... passed\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1976 "retrieved row (String):\n" +
463
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1977 // old output "1970-01-01 00:00:00.000000 | 1970-01-01 01:00:00.000000+01:00 | 00:00:00 | 01:00:00+01:00\n" +
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1978 "1970-01-01 00:00:00.000000 | 00:00:00 | \n" +
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1979 "default (UTC):\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1980 "1970-01-01 00:00:00.000+0000 | 1970-01-01 00:00:00.000+0000 | 00:00:00.000+0000 | 00:00:00.000+0000\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1981 "America/Los_Angeles:\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1982 "1970-01-01 08:00:00.0 | 1970-01-01 00:00:00.0 | 08:00:00 | 00:00:00\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1983 "Africa/Windhoek:\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1984 "1969-12-31 22:00:00.0 | 1970-01-01 00:00:00.0 | 22:00:00 | 00:00:00\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1985 "retrieved row (String):\n" +
463
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1986 // old output "1970-01-01 00:00:00.000000 | 1970-01-01 01:00:00.000000+01:00 | 00:00:00 | 01:00:00+01:00\n" +
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1987 "1970-01-01 00:00:00.000000 | 00:00:00 | \n" +
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1988 "default (UTC):\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1989 "1970-01-01 00:00:00.000+0000 | 1970-01-01 00:00:00.000+0000 | 00:00:00.000+0000 | 00:00:00.000+0000\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1990 "America/Los_Angeles:\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1991 "1970-01-01 08:00:00.0 | 1970-01-01 00:00:00.0 | 08:00:00 | 00:00:00\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1992 "Africa/Windhoek:\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1993 "1969-12-31 22:00:00.0 | 1970-01-01 00:00:00.0 | 22:00:00 | 00:00:00\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1994 "retrieved row (String):\n" +
463
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1995 // old output "1969-12-31 16:00:00.000000 | 1970-01-01 01:00:00.000000+01:00 | 16:00:00 | 01:00:00+01:00\n" +
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
1996 "1969-12-31 16:00:00.000000 | 16:00:00 | \n" +
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1997 "default (UTC):\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1998 "1969-12-31 16:00:00.000+0000 | 1970-01-01 00:00:00.000+0000 | 16:00:00.000+0000 | 00:00:00.000+0000\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
1999 "America/Los_Angeles:\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2000 "1970-01-01 00:00:00.0 | 1970-01-01 00:00:00.0 | 00:00:00 | 00:00:00\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2001 "Africa/Windhoek:\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2002 "1969-12-31 14:00:00.0 | 1970-01-01 00:00:00.0 | 14:00:00 | 00:00:00\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2003 "retrieved row (String):\n" +
463
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
2004 // old output "1970-01-01 00:00:00.000000 | 1970-01-01 01:00:00.000000+01:00 | 00:00:00 | 01:00:00+01:00\n" +
cde144382233 Remove output of Test_PStimezone which changes when summertime or wintertime is changing the default timezone.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 458
diff changeset
2005 "1970-01-01 00:00:00.000000 | 00:00:00 | \n" +
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2006 "default (UTC):\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2007 "1970-01-01 00:00:00.000+0000 | 1970-01-01 00:00:00.000+0000 | 00:00:00.000+0000 | 00:00:00.000+0000\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2008 "America/Los_Angeles:\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2009 "1970-01-01 08:00:00.0 | 1970-01-01 00:00:00.0 | 08:00:00 | 00:00:00\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2010 "Africa/Windhoek:\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2011 "1969-12-31 22:00:00.0 | 1970-01-01 00:00:00.0 | 22:00:00 | 00:00:00\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2012 "0. true true\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2013 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2014
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2015 private void Test_PStypes() {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2016 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2017
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2018 Statement stmt = null;
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2019 PreparedStatement pstmt = null;
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2020 try {
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2021 con.setAutoCommit(false);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2022 // >> false: auto commit should be off now
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2023 sb.append("0. false\t").append(con.getAutoCommit()).append("\n");
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2024
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2025 stmt = con.createStatement();
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2026 int updates = stmt.executeUpdate(
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2027 "CREATE TABLE htmtest (" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2028 " htmid bigint NOT NULL," +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2029 " ra double ," +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2030 " decl double ," +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2031 " dra double ," +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2032 " ddecl double ," +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2033 " flux double ," +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2034 " dflux double ," +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2035 " freq double ," +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2036 " bw double ," +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2037 " type decimal(1,0)," +
488
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
2038 " imageurl url(100)," +
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2039 " comment varchar(100)," +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2040 " CONSTRAINT htmtest_htmid_pkey PRIMARY KEY (htmid)" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2041 ")" );
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2042 if (updates != Statement.SUCCESS_NO_INFO)
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2043 sb.append("1. Expected -2 got ").append(updates).append(" instead\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2044
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2045 // index is not used, but the original bug had it too
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2046 updates = stmt.executeUpdate("CREATE INDEX htmid ON htmtest (htmid)");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2047 if (updates != Statement.SUCCESS_NO_INFO)
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2048 sb.append("1. Expected -2 got ").append(updates).append(" instead\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2049
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2050 stmt.close();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2051
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2052 pstmt = con.prepareStatement("INSERT INTO HTMTEST (HTMID,RA,DECL,FLUX,COMMENT) VALUES (?,?,?,?,?)");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2053 sb.append("1. inserting a record...");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2054 pstmt.setLong(1, 1L);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2055 pstmt.setFloat(2, (float)1.2);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2056 pstmt.setDouble(3, 2.4);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2057 pstmt.setDouble(4, 3.2);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2058 pstmt.setString(5, "vlavbla");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2059 pstmt.executeUpdate();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2060 sb.append("success\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2061
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2062 // try an update like bug #1757923
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2063 pstmt = con.prepareStatement("UPDATE HTMTEST set COMMENT=?, TYPE=? WHERE HTMID=?");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2064 sb.append("2. updating record...");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2065 pstmt.setString(1, "some update");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2066 pstmt.setObject(2, (float)3.2);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2067 pstmt.setLong(3, 1L);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2068 pstmt.executeUpdate();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2069 sb.append("success\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2070
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2071 pstmt.close();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2072
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2073 con.rollback();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2074 con.setAutoCommit(true);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2075 // >> true: auto commit was just switched on
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2076 sb.append("0. true\t").append(con.getAutoCommit()).append("\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2077 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2078 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2079 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2080
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2081 closeStmtResSet(stmt, null);
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2082 closeStmtResSet(pstmt, null);
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2083
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2084 compareExpectedOutput("Test_PStypes",
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2085 "0. false false\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2086 "1. inserting a record...success\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2087 "2. updating record...success\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2088 "0. true true\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2089 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2090
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2091 private void Test_CallableStmt() {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2092 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2093
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2094 Statement stmt = null;
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2095 CallableStatement cstmt = null;
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2096 try {
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2097 String tbl_nm = "tbl6402";
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2098 String proc_nm = "proc6402";
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2099
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2100 stmt = con.createStatement();
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2101
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2102 // create a test table.
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2103 stmt.executeUpdate("CREATE TABLE IF NOT EXISTS " + tbl_nm + " (tint int, tdouble double, tbool boolean, tvarchar varchar(15), tclob clob, turl url, tclen int);");
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2104 sb.append("Created table: ").append(tbl_nm).append("\n");
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2105
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2106 // create a procedure with multiple different IN parameters which inserts a row into a table of which one column is computed.
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2107 stmt.executeUpdate("CREATE PROCEDURE " + proc_nm + " (myint int, mydouble double, mybool boolean, myvarchar varchar(15), myclob clob, myurl url) BEGIN" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2108 " INSERT INTO " + tbl_nm + " (tint, tdouble, tbool, tvarchar, tclob, turl, tclen) VALUES (myint, mydouble, mybool, myvarchar, myclob, myurl, LENGTH(myvarchar) + LENGTH(myclob)); " +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2109 "END;");
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2110 sb.append("Created procedure: ").append(proc_nm).append("\n");
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2111
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2112 // make sure we can call the procedure the old way (as string)
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2113 stmt.executeUpdate("call " + proc_nm + "(1, 1.1, true,'one','ONE', 'www.monetdb.org');");
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2114 sb.append("Called procedure (1): ").append(proc_nm).append("\n");
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2115 showTblContents(tbl_nm);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2116
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2117 // now use a CallableStament object
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2118 cstmt = con.prepareCall(" { call " + proc_nm + " (?,?, ?, ? , ?,?) } ;");
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2119 sb.append("Prepared Callable procedure: ").append(proc_nm).append("\n");
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2120
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2121 // specify first set of params
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2122 cstmt.setInt(1, 2);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2123 cstmt.setDouble(2, 2.02);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2124 cstmt.setBoolean(3, true);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2125 cstmt.setString(4, "Two");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2126 Clob myclob = con.createClob();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2127 myclob.setString(1, "TWOs");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2128 cstmt.setClob(5, myclob);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2129 cstmt.setString(6, "http://www.monetdb.org/");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2130 cstmt.execute();
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2131 sb.append("Called Prepared procedure (1): ").append(proc_nm).append("\n");
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2132 showParams(cstmt);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2133 showTblContents(tbl_nm);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2134
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2135 myclob.setString(1, "TREEs");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2136 // specify second set of params (some (1 and 3 and 5) are left the same)
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2137 cstmt.setDouble(2, 3.02);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2138 cstmt.setString(4, "Tree");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2139 try {
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2140 cstmt.setURL(6, new java.net.URL("https://www.monetdb.org/"));
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2141 } catch (java.net.MalformedURLException mfue) {
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2142 sb.append("Invalid URL: ").append(mfue.getMessage()).append("\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2143 }
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2144 cstmt.execute();
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2145 sb.append("Called Prepared procedure (2): ").append(proc_nm).append("\n");
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2146 // showParams(cstmt);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2147 showTblContents(tbl_nm);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2148
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2149 // specify third set of params (some (1 and 2) are left the same)
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2150 cstmt.setInt(1, 4);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2151 cstmt.setBoolean(3, false);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2152 cstmt.setString(4, "Four");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2153 cstmt.executeUpdate();
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2154 sb.append("Called Prepared procedure (3): ").append(proc_nm).append("\n");
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2155 showTblContents(tbl_nm);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2156
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2157 // test setNull() also
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2158 cstmt.setNull(3, Types.BOOLEAN);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2159 cstmt.setNull(5, Types.CLOB);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2160 cstmt.setNull(2, Types.DOUBLE);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2161 cstmt.setNull(4, Types.VARCHAR);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2162 cstmt.setNull(1, Types.INTEGER);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2163 cstmt.executeUpdate();
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2164 sb.append("Called Prepared procedure (with NULLs): ").append(proc_nm).append("\n");
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2165 showTblContents(tbl_nm);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2166
488
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
2167 cstmt.clearParameters();
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
2168
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
2169 sb.append("Test completed. Cleanup procedure and table.\n");
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2170 stmt.execute("DROP PROCEDURE IF EXISTS " + proc_nm + ";");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2171 stmt.execute("DROP TABLE IF EXISTS " + tbl_nm + ";");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2172
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2173 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2174 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2175 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2176
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2177 closeStmtResSet(stmt, null);
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2178 closeStmtResSet(cstmt, null);
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2179
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2180 compareExpectedOutput("Test_CallableStmt",
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2181 "Created table: tbl6402\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2182 "Created procedure: proc6402\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2183 "Called procedure (1): proc6402\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2184 "Table tbl6402 has 7 columns:\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2185 " tint tdouble tbool tvarchar tclob turl tclen\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2186 " 1 1.1 true one ONE www.monetdb.org 6\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2187 "Prepared Callable procedure: proc6402\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2188 "Called Prepared procedure (1): proc6402\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2189 "pmd. 6 parameters:\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2190 "Param 1\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2191 " nullable 2 (UNKNOWN)\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2192 " signed true\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2193 " precision 32\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2194 " scale 0\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2195 " type 4\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2196 " typename int\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2197 " classname java.lang.Integer\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2198 " mode 1 (IN)\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2199 "Param 2\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2200 " nullable 2 (UNKNOWN)\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2201 " signed true\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2202 " precision 53\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2203 " scale 0\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2204 " type 8\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2205 " typename double\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2206 " classname java.lang.Double\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2207 " mode 1 (IN)\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2208 "Param 3\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2209 " nullable 2 (UNKNOWN)\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2210 " signed false\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2211 " precision 1\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2212 " scale 0\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2213 " type 16\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2214 " typename boolean\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2215 " classname java.lang.Boolean\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2216 " mode 1 (IN)\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2217 "Param 4\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2218 " nullable 2 (UNKNOWN)\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2219 " signed false\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2220 " precision 15\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2221 " scale 0\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2222 " type 12\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2223 " typename varchar\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2224 " classname java.lang.String\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2225 " mode 1 (IN)\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2226 "Param 5\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2227 " nullable 2 (UNKNOWN)\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2228 " signed false\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2229 " precision 0\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2230 " scale 0\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2231 " type 12\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2232 " typename clob\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2233 " classname java.lang.String\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2234 " mode 1 (IN)\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2235 "Param 6\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2236 " nullable 2 (UNKNOWN)\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2237 " signed false\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2238 " precision 0\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2239 " scale 0\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2240 " type 12\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2241 " typename url\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2242 " classname org.monetdb.jdbc.types.URL\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2243 " mode 1 (IN)\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2244 "Table tbl6402 has 7 columns:\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2245 " tint tdouble tbool tvarchar tclob turl tclen\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2246 " 1 1.1 true one ONE www.monetdb.org 6\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2247 " 2 2.02 true Two TWOs http://www.monetdb.org/ 7\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2248 "Called Prepared procedure (2): proc6402\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2249 "Table tbl6402 has 7 columns:\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2250 " tint tdouble tbool tvarchar tclob turl tclen\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2251 " 1 1.1 true one ONE www.monetdb.org 6\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2252 " 2 2.02 true Two TWOs http://www.monetdb.org/ 7\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2253 " 2 3.02 true Tree TWOs https://www.monetdb.org/ 8\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2254 "Called Prepared procedure (3): proc6402\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2255 "Table tbl6402 has 7 columns:\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2256 " tint tdouble tbool tvarchar tclob turl tclen\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2257 " 1 1.1 true one ONE www.monetdb.org 6\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2258 " 2 2.02 true Two TWOs http://www.monetdb.org/ 7\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2259 " 2 3.02 true Tree TWOs https://www.monetdb.org/ 8\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2260 " 4 3.02 false Four TWOs https://www.monetdb.org/ 8\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2261 "Called Prepared procedure (with NULLs): proc6402\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2262 "Table tbl6402 has 7 columns:\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2263 " tint tdouble tbool tvarchar tclob turl tclen\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2264 " 1 1.1 true one ONE www.monetdb.org 6\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2265 " 2 2.02 true Two TWOs http://www.monetdb.org/ 7\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2266 " 2 3.02 true Tree TWOs https://www.monetdb.org/ 8\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2267 " 4 3.02 false Four TWOs https://www.monetdb.org/ 8\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2268 " null null null null null https://www.monetdb.org/ null\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2269 "Test completed. Cleanup procedure and table.\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2270 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2271
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2272 private void Test_Rbooleans() {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2273 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2274
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2275 Statement stmt = null;
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2276 ResultSet rs = null;
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2277 try {
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2278 con.setAutoCommit(false);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2279 // >> false: auto commit should be off now
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2280 sb.append("0. false\t").append(con.getAutoCommit()).append("\n");
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2281
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2282 stmt = con.createStatement();
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2283 int updates = stmt.executeUpdate(
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2284 "CREATE TABLE Test_Rbooleans (" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2285 " id int, tiny_int tinyint, small_int smallint, medium_int mediumint, \"integer\" int, big_int bigint," +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2286 " a_real real, a_float float, a_double double, a_decimal decimal(8,2), a_numeric numeric(8)," +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2287 " bool boolean, a_char char(4), b_char char(5), a_varchar varchar(20), PRIMARY KEY (id) )");
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2288 if (updates != Statement.SUCCESS_NO_INFO)
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2289 sb.append("1a. Expected -2 got ").append(updates).append(" instead\n");
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2290
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2291 // all falses
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2292 updates = stmt.executeUpdate("INSERT INTO Test_Rbooleans VALUES (1,0,0,0,0,0,0.0,0.0,0.0,0.0,0,false,'fals','false','false')");
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2293 // all trues
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2294 updates += stmt.executeUpdate("INSERT INTO Test_Rbooleans VALUES (2,1,1,1,1,1,1.0,1.0,1.0,1.0,1,true,'true','true ','true')");
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2295 // sneakier
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2296 updates += stmt.executeUpdate("INSERT INTO Test_Rbooleans VALUES (3,2,3,4,5,6,7.1,8.2,9.3,10.4,11,true,'TrUe','fAlSe','true/false')");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2297 updates += stmt.executeUpdate("INSERT INTO Test_Rbooleans VALUES (4,2,3,4,5,6,7.1,8.2,9.3,10.4,11,true,'t ','f ','TRUE ')");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2298 if (updates != 4)
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2299 sb.append("1b. Expected 4 got ").append(updates).append(" instead\n");
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2300
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2301 rs = stmt.executeQuery("SELECT * FROM Test_Rbooleans ORDER BY id ASC");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2302
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2303 // all should give false
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2304 rs.next();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2305 sb.append("1. ").append(rs.getInt("id")).append(", ").append(rs.getBoolean("tiny_int"))
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2306 .append(", ").append(rs.getBoolean("small_int")).append(", ").append(rs.getBoolean("medium_int"))
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2307 .append(", ").append(rs.getBoolean("integer")).append(", ").append(rs.getBoolean("big_int"))
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2308 .append(", ").append(rs.getBoolean("a_real")).append(", ").append(rs.getBoolean("a_double"))
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2309 .append(", ").append(rs.getBoolean("a_decimal")).append(", ").append(rs.getBoolean("a_numeric"))
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2310 .append(", ").append(rs.getBoolean("bool")).append(", ").append(rs.getBoolean("a_char"))
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2311 .append(", ").append(rs.getBoolean("b_char")).append(", ").append(rs.getBoolean("a_varchar")).append("\n");
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2312
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2313 // all should give true except the one before last
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2314 rs.next();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2315 sb.append("2. ").append(rs.getInt("id")).append(", ").append(rs.getBoolean("tiny_int"))
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2316 .append(", ").append(rs.getBoolean("small_int")).append(", ").append(rs.getBoolean("medium_int"))
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2317 .append(", ").append(rs.getBoolean("integer")).append(", ").append(rs.getBoolean("big_int"))
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2318 .append(", ").append(rs.getBoolean("a_real")).append(", ").append(rs.getBoolean("a_double"))
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2319 .append(", ").append(rs.getBoolean("a_decimal")).append(", ").append(rs.getBoolean("a_numeric"))
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2320 .append(", ").append(rs.getBoolean("bool")).append(", ").append(rs.getBoolean("a_char"))
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2321 .append(", ").append(rs.getBoolean("b_char")).append(", ").append(rs.getBoolean("a_varchar")).append("\n");
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2322
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2323 // should give true for all but the last two
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2324 rs.next();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2325 sb.append("3. ").append(rs.getInt("id")).append(", ").append(rs.getBoolean("tiny_int"))
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2326 .append(", ").append(rs.getBoolean("small_int")).append(", ").append(rs.getBoolean("medium_int"))
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2327 .append(", ").append(rs.getBoolean("integer")).append(", ").append(rs.getBoolean("big_int"))
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2328 .append(", ").append(rs.getBoolean("a_real")).append(", ").append(rs.getBoolean("a_double"))
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2329 .append(", ").append(rs.getBoolean("a_decimal")).append(", ").append(rs.getBoolean("a_numeric"))
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2330 .append(", ").append(rs.getBoolean("bool")).append(", ").append(rs.getBoolean("a_char"))
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2331 .append(", ").append(rs.getBoolean("b_char")).append(", ").append(rs.getBoolean("a_varchar")).append("\n");
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2332
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2333 // should give true for all but the last three
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2334 rs.next();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2335 sb.append("4. ").append(rs.getInt("id")).append(", ").append(rs.getBoolean("tiny_int"))
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2336 .append(", ").append(rs.getBoolean("small_int")).append(", ").append(rs.getBoolean("medium_int"))
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2337 .append(", ").append(rs.getBoolean("integer")).append(", ").append(rs.getBoolean("big_int"))
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2338 .append(", ").append(rs.getBoolean("a_real")).append(", ").append(rs.getBoolean("a_double"))
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2339 .append(", ").append(rs.getBoolean("a_decimal")).append(", ").append(rs.getBoolean("a_numeric"))
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2340 .append(", ").append(rs.getBoolean("bool")).append(", ").append(rs.getBoolean("a_char"))
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2341 .append(", ").append(rs.getBoolean("b_char")).append(", ").append(rs.getBoolean("a_varchar")).append("\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2342 rs.next();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2343
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2344 con.rollback();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2345 con.setAutoCommit(true);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2346 // >> true: auto commit was just switched on
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2347 sb.append("0. true\t").append(con.getAutoCommit()).append("\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2348 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2349 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2350 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2351
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2352 closeStmtResSet(stmt, rs);
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2353
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2354 compareExpectedOutput("Test_Rbooleans",
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2355 "0. false false\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2356 "1. 1, false, false, false, false, false, false, false, false, false, false, false, false, false\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2357 "2. 2, true, true, true, true, true, true, true, true, true, true, true, false, true\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2358 "3. 3, true, true, true, true, true, true, true, true, true, true, true, false, false\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2359 "4. 4, true, true, true, true, true, true, true, true, true, true, false, false, false\n" +
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
2360 "0. true true\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2361 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2362
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2363 private void Test_Rmetadata() {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2364 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2365
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2366 Statement stmt = null;
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2367 ResultSet rs = null;
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2368 try {
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2369 con.setAutoCommit(false);
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2370 // >> false: auto commit should be off now
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2371 sb.append("0. false\t").append(con.getAutoCommit()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2372
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2373 stmt = con.createStatement();
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2374 stmt.executeUpdate("CREATE TABLE Test_Rmetadata ( myint int, mydouble double, mybool boolean, myvarchar varchar(15), myclob clob )");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2375
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2376 // all NULLs
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2377 stmt.executeUpdate("INSERT INTO Test_Rmetadata VALUES (NULL, NULL, NULL, NULL, NULL)");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2378 // all filled in
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2379 stmt.executeUpdate("INSERT INTO Test_Rmetadata VALUES (2 , 3.0, true, 'A string', 'bla bla bla')");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2380
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2381 rs = stmt.executeQuery("SELECT * FROM Test_Rmetadata");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2382
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2383 ResultSetMetaData rsmd = rs.getMetaData();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2384 sb.append("0. ").append(rsmd.getColumnCount()).append(" columns:\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2385 for (int col = 1; col <= rsmd.getColumnCount(); col++) {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2386 sb.append("Colnr ").append(col).append(".\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2387 sb.append("\tclassname ").append(rsmd.getColumnClassName(col)).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2388 sb.append("\tdisplaysize ").append(rsmd.getColumnDisplaySize(col)).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2389 sb.append("\tlabel ").append(rsmd.getColumnLabel(col)).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2390 sb.append("\tname ").append(rsmd.getColumnName(col)).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2391 sb.append("\ttype ").append(rsmd.getColumnType(col)).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2392 sb.append("\ttypename ").append(rsmd.getColumnTypeName(col)).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2393 sb.append("\tprecision ").append(rsmd.getPrecision(col)).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2394 sb.append("\tscale ").append(rsmd.getScale(col)).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2395 sb.append("\tcatalogname ").append(rsmd.getCatalogName(col)).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2396 sb.append("\tschemaname ").append(rsmd.getSchemaName(col)).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2397 sb.append("\ttablename ").append(rsmd.getTableName(col)).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2398 sb.append("\tautoincrement ").append(rsmd.isAutoIncrement(col)).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2399 sb.append("\tcasesensitive ").append(rsmd.isCaseSensitive(col)).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2400 sb.append("\tcurrency ").append(rsmd.isCurrency(col)).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2401 sb.append("\tdefwritable ").append(rsmd.isDefinitelyWritable(col)).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2402 sb.append("\tnullable ").append(rsmd.isNullable(col)).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2403 sb.append("\treadonly ").append(rsmd.isReadOnly(col)).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2404 sb.append("\tsearchable ").append(rsmd.isSearchable(col)).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2405 sb.append("\tsigned ").append(rsmd.isSigned(col)).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2406 sb.append("\twritable ").append(rsmd.isWritable(col)).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2407 }
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2408
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2409 for (int i = 6; rs.next(); i++) {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2410 for (int col = 1; col <= rsmd.getColumnCount(); col++) {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2411 Object obj = rs.getObject(col);
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2412 String type = rsmd.getColumnClassName(col);
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2413 String isInstance = "(null)";
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2414 if (obj != null && type != null) {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2415 try {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2416 Class<?> c = Class.forName(type);
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2417 if (c.isInstance(obj)) {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2418 isInstance = (obj.getClass().getName() + " is an instance of " + type);
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2419 } else {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2420 isInstance = (obj.getClass().getName() + " is NOT an instance of " + type);
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2421 }
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2422 } catch (ClassNotFoundException e) {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2423 isInstance = "No such class: " + type;
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2424 }
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2425 }
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2426 sb.append(i).append(".\t").append(isInstance).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2427 }
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2428 }
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2429 rs.close();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2430
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2431 con.rollback();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2432 con.setAutoCommit(true);
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2433 // >> true: auto commit was just switched on
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2434 sb.append("0. true\t").append(con.getAutoCommit()).append("\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2435 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2436 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2437 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2438
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2439 closeStmtResSet(stmt, rs);
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2440
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2441 compareExpectedOutput("Test_Rmetadata",
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2442 "0. false false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2443 "0. 5 columns:\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2444 "Colnr 1.\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2445 " classname java.lang.Integer\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2446 " displaysize 1\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2447 " label myint\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2448 " name myint\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2449 " type 4\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2450 " typename int\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2451 " precision 10\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2452 " scale 0\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2453 " catalogname null\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2454 " schemaname sys\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2455 " tablename test_rmetadata\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2456 " autoincrement false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2457 " casesensitive false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2458 " currency false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2459 " defwritable false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2460 " nullable 1\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2461 " readonly true\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2462 " searchable true\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2463 " signed true\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2464 " writable false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2465 "Colnr 2.\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2466 " classname java.lang.Double\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2467 " displaysize 24\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2468 " label mydouble\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2469 " name mydouble\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2470 " type 8\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2471 " typename double\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2472 " precision 15\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2473 " scale 0\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2474 " catalogname null\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2475 " schemaname sys\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2476 " tablename test_rmetadata\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2477 " autoincrement false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2478 " casesensitive false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2479 " currency false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2480 " defwritable false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2481 " nullable 1\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2482 " readonly true\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2483 " searchable true\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2484 " signed true\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2485 " writable false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2486 "Colnr 3.\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2487 " classname java.lang.Boolean\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2488 " displaysize 5\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2489 " label mybool\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2490 " name mybool\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2491 " type 16\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2492 " typename boolean\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2493 " precision 1\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2494 " scale 0\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2495 " catalogname null\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2496 " schemaname sys\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2497 " tablename test_rmetadata\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2498 " autoincrement false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2499 " casesensitive false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2500 " currency false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2501 " defwritable false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2502 " nullable 1\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2503 " readonly true\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2504 " searchable true\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2505 " signed false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2506 " writable false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2507 "Colnr 4.\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2508 " classname java.lang.String\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2509 " displaysize 8\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2510 " label myvarchar\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2511 " name myvarchar\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2512 " type 12\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2513 " typename varchar\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2514 " precision 15\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2515 " scale 0\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2516 " catalogname null\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2517 " schemaname sys\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2518 " tablename test_rmetadata\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2519 " autoincrement false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2520 " casesensitive true\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2521 " currency false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2522 " defwritable false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2523 " nullable 1\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2524 " readonly true\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2525 " searchable true\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2526 " signed false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2527 " writable false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2528 "Colnr 5.\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2529 " classname java.lang.String\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2530 " displaysize 11\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2531 " label myclob\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2532 " name myclob\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2533 " type 12\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2534 " typename clob\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2535 " precision 11\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2536 " scale 0\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2537 " catalogname null\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2538 " schemaname sys\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2539 " tablename test_rmetadata\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2540 " autoincrement false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2541 " casesensitive true\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2542 " currency false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2543 " defwritable false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2544 " nullable 1\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2545 " readonly true\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2546 " searchable true\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2547 " signed false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2548 " writable false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2549 "6. (null)\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2550 "6. (null)\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2551 "6. (null)\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2552 "6. (null)\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2553 "6. (null)\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2554 "7. java.lang.Integer is an instance of java.lang.Integer\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2555 "7. java.lang.Double is an instance of java.lang.Double\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2556 "7. java.lang.Boolean is an instance of java.lang.Boolean\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2557 "7. java.lang.String is an instance of java.lang.String\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2558 "7. java.lang.String is an instance of java.lang.String\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2559 "0. true true\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2560 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2561
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2562 private void Test_Rpositioning() {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2563 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2564
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2565 Statement stmt = null;
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2566 ResultSet rs = null;
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2567 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2568 stmt = con.createStatement();
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2569 // get a one rowed resultset
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2570 rs = stmt.executeQuery("SELECT 1");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2571
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2572 // >> true: we should be before the first result now
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2573 sb.append("1. true\t").append(rs.isBeforeFirst()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2574 // >> false: we're not at the first result
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2575 sb.append("2. false\t").append(rs.isFirst()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2576 // >> true: there is one result, so we can call next once
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2577 sb.append("3. true\t").append(rs.next()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2578 // >> false: we're not before the first row anymore
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2579 sb.append("4. false\t").append(rs.isBeforeFirst()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2580 // >> true: we're at the first result
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2581 sb.append("5. true\t").append(rs.isFirst()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2582 // >> false: we're on the last row
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2583 sb.append("6. false\t").append(rs.isAfterLast()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2584 // >> true: see above
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2585 sb.append("7. true\t").append(rs.isLast()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2586 // >> false: there is one result, so this is it
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2587 sb.append("8. false\t").append(rs.next()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2588 // >> true: yes, we're at the end
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2589 sb.append("9. true\t").append(rs.isAfterLast()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2590 // >> false: no we're one over it
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2591 sb.append("10. false\t").append(rs.isLast()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2592 // >> false: another try to move on should still fail
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2593 sb.append("11. false\t").append(rs.next()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2594 // >> true: and we should stay positioned after the last
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2595 sb.append("12.true\t").append(rs.isAfterLast()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2596
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2597 rs.close();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2598
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2599 // try the same with a scrollable result set
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2600 DatabaseMetaData dbmd = con.getMetaData();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2601 rs = dbmd.getTableTypes();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2602
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2603 // >> true: we should be before the first result now
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2604 sb.append("1. true\t").append(rs.isBeforeFirst()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2605 // >> false: we're not at the first result
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2606 sb.append("2. false\t").append(rs.isFirst()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2607 // >> true: there is one result, so we can call next once
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2608 sb.append("3. true\t").append(rs.next()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2609 // >> false: we're not before the first row anymore
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2610 sb.append("4. false\t").append(rs.isBeforeFirst()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2611 // >> true: we're at the first result
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2612 sb.append("5. true\t").append(rs.isFirst()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2613 // move to last row
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2614 rs.last();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2615 // >> false: we're on the last row
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2616 sb.append("6. false\t").append(rs.isAfterLast()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2617 // >> true: see above
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2618 sb.append("7. true\t").append(rs.isLast()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2619 // >> false: there is one result, so this is it
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2620 sb.append("8. false\t").append(rs.next()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2621 // >> true: yes, we're at the end
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2622 sb.append("9. true\t").append(rs.isAfterLast()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2623 // >> false: no we're one over it
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2624 sb.append("10. false\t").append(rs.isLast()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2625 // >> false: another try to move on should still fail
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2626 sb.append("11. false\t").append(rs.next()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2627 // >> true: and we should stay positioned after the last
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2628 sb.append("12. true\t").append(rs.isAfterLast()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2629
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2630 rs.close();
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2631 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2632 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2633 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2634
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2635 closeStmtResSet(stmt, rs);
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2636
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2637 compareExpectedOutput("Test_Rpositioning",
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2638 "1. true true\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2639 "2. false false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2640 "3. true true\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2641 "4. false false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2642 "5. true true\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2643 "6. false false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2644 "7. true true\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2645 "8. false false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2646 "9. true true\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2647 "10. false false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2648 "11. false false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2649 "12.true true\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2650 "1. true true\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2651 "2. false false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2652 "3. true true\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2653 "4. false false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2654 "5. true true\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2655 "6. false false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2656 "7. true true\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2657 "8. false false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2658 "9. true true\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2659 "10. false false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2660 "11. false false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2661 "12. true true\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2662 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2663
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2664 private void Test_Rsqldata() {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2665 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2666
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2667 Statement stmt = null;
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2668 ResultSet rs = null;
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2669 ResultSetMetaData rsmd = null;
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2670
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2671 try {
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2672 con.setAutoCommit(false);
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2673 // >> false: auto commit should be off now
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2674 sb.append("0. false\t").append(con.getAutoCommit()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2675
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2676 stmt = con.createStatement();
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2677 stmt.executeUpdate("CREATE TABLE Test_Rsqldata ( myinet inet, myurl url )");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2678
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2679 String InsertInto = "INSERT INTO Test_Rsqldata VALUES ";
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2680 // all NULLs
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2681 stmt.executeUpdate(InsertInto + "(NULL, NULL)");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2682 // all filled in
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2683 stmt.executeUpdate(InsertInto + "('172.5.5.5' , 'http://www.monetdb.org/')");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2684 stmt.executeUpdate(InsertInto + "('172.5.5.5/32' , 'http://www.monetdb.org/Home')");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2685 stmt.executeUpdate(InsertInto + "('172.5.5.5/16' , 'http://www.monetdb.org/Home#someanchor')");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2686 stmt.executeUpdate(InsertInto + "('172.5.5.5/26' , 'http://www.monetdb.org/?query=bla')");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2687
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2688 rs = stmt.executeQuery("SELECT * FROM Test_Rsqldata");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2689 rsmd = rs.getMetaData();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2690
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2691 sb.append("0. ").append(rsmd.getColumnCount()).append(" columns:\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2692 for (int col = 1; col <= rsmd.getColumnCount(); col++) {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2693 sb.append(col).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2694 sb.append("\tclassname ").append(rsmd.getColumnClassName(col)).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2695 sb.append("\tcatalogname ").append(rsmd.getCatalogName(col)).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2696 sb.append("\tschemaname ").append(rsmd.getSchemaName(col)).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2697 sb.append("\ttablename ").append(rsmd.getTableName(col)).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2698 sb.append("\tcolumnname ").append(rsmd.getColumnName(col)).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2699 }
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2700
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2701 for (int i = 1; rs.next(); i++) {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2702 for (int col = 1; col <= rsmd.getColumnCount(); col++) {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2703 sb.append(i).append(".\t");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2704 Object x = rs.getObject(col);
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2705 if (x == null) {
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
2706 sb.append("<null>\n");
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2707 } else {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2708 sb.append(x.toString()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2709 if (x instanceof INET) {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2710 INET inet = (INET)x;
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2711 sb.append("\t").append(inet.getAddress()).append("/").append(inet.getNetmaskBits()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2712 sb.append("\t").append(inet.getInetAddress().toString()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2713 } else if (x instanceof URL) {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2714 URL url = (URL)x;
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2715 sb.append("\t").append(url.getURL().toString()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2716 }
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2717 }
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2718 }
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2719 }
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2720
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2721 rs.close();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2722
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2723 con.rollback();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2724 con.setAutoCommit(true);
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2725 // >> true: auto commit was just switched on
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2726 sb.append("0. true\t").append(con.getAutoCommit()).append("\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2727 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2728 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2729 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2730
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2731 closeStmtResSet(stmt, rs);
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2732
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2733 compareExpectedOutput("Test_Rsqldata",
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2734 "0. false false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2735 "0. 2 columns:\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2736 "1\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2737 " classname org.monetdb.jdbc.types.INET\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2738 " catalogname null\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2739 " schemaname sys\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2740 " tablename test_rsqldata\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2741 " columnname myinet\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2742 "2\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2743 " classname org.monetdb.jdbc.types.URL\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2744 " catalogname null\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2745 " schemaname sys\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2746 " tablename test_rsqldata\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2747 " columnname myurl\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2748 "1. <null>\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2749 "1. <null>\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2750 "2. 172.5.5.5\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2751 " 172.5.5.5/32\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2752 " /172.5.5.5\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2753 "2. http://www.monetdb.org/\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2754 " http://www.monetdb.org/\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2755 "3. 172.5.5.5\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2756 " 172.5.5.5/32\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2757 " /172.5.5.5\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2758 "3. http://www.monetdb.org/Home\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2759 " http://www.monetdb.org/Home\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2760 "4. 172.5.5.5/16\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2761 " 172.5.5.5/16\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2762 " /172.5.5.5\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2763 "4. http://www.monetdb.org/Home#someanchor\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2764 " http://www.monetdb.org/Home#someanchor\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2765 "5. 172.5.5.5/26\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2766 " 172.5.5.5/26\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2767 " /172.5.5.5\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2768 "5. http://www.monetdb.org/?query=bla\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2769 " http://www.monetdb.org/?query=bla\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2770 "0. true true\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2771 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2772
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2773 private void Test_Rtimedate() {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2774 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2775
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2776 Statement stmt = null;
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2777 ResultSet rs = null;
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2778 try {
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2779 con.setAutoCommit(false);
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2780 // >> false: auto commit should be off now
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2781 sb.append("0. false\t").append(con.getAutoCommit()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2782
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2783 stmt = con.createStatement();
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2784 stmt.executeUpdate("CREATE TABLE table_Test_Rtimedate ( id int PRIMARY KEY, ts timestamp, t time, d date, vc varchar(30) )");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2785
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2786 stmt.executeUpdate("INSERT INTO table_Test_Rtimedate(id, ts) VALUES (1, timestamp '2004-04-24 11:43:53.123')");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2787 stmt.executeUpdate("INSERT INTO table_Test_Rtimedate(id, t) VALUES (2, time '11:43:53.123')");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2788 stmt.executeUpdate("INSERT INTO table_Test_Rtimedate(id, d) VALUES (3, date '2004-04-24')");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2789 // same values but now as strings to test string to timestamp / time / date object conversions
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2790 stmt.executeUpdate("INSERT INTO table_Test_Rtimedate(id, vc) VALUES (4, '2004-04-24 11:43:53.654321')");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2791 stmt.executeUpdate("INSERT INTO table_Test_Rtimedate(id, vc) VALUES (5, '11:43:53')");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2792 stmt.executeUpdate("INSERT INTO table_Test_Rtimedate(id, vc) VALUES (6, '2004-04-24')");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2793
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2794 // test also with small years (< 1000) (see bug 6468)
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2795 stmt.executeUpdate("INSERT INTO table_Test_Rtimedate(id, ts) VALUES (11, timestamp '904-04-24 11:43:53.567')");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2796 stmt.executeUpdate("INSERT INTO table_Test_Rtimedate(id, ts) VALUES (12, timestamp '74-04-24 11:43:53.567')");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2797 stmt.executeUpdate("INSERT INTO table_Test_Rtimedate(id, ts) VALUES (13, timestamp '4-04-24 11:43:53.567')");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2798 stmt.executeUpdate("INSERT INTO table_Test_Rtimedate(id, d) VALUES (14, date '904-04-24')");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2799 stmt.executeUpdate("INSERT INTO table_Test_Rtimedate(id, d) VALUES (15, date '74-04-24')");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2800 stmt.executeUpdate("INSERT INTO table_Test_Rtimedate(id, d) VALUES (16, date '4-04-24')");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2801 stmt.executeUpdate("INSERT INTO table_Test_Rtimedate(id, vc) VALUES (17, '904-04-24 11:43:53.567')");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2802 stmt.executeUpdate("INSERT INTO table_Test_Rtimedate(id, vc) VALUES (18, '74-04-24 11:43:53.567')");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2803 stmt.executeUpdate("INSERT INTO table_Test_Rtimedate(id, vc) VALUES (19, '4-04-24 11:43:53.567')");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2804
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2805 // test also with negative years (see bug 6468)
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2806 stmt.executeUpdate("INSERT INTO table_Test_Rtimedate(id, ts) VALUES (21, timestamp '-4-04-24 11:43:53.567')"); // negative year
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2807 stmt.executeUpdate("INSERT INTO table_Test_Rtimedate(id, ts) VALUES (22, timestamp '-2004-04-24 11:43:53.567')"); // negative year
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2808 stmt.executeUpdate("INSERT INTO table_Test_Rtimedate(id, d) VALUES (23, date '-4-04-24')"); // negative year
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2809 stmt.executeUpdate("INSERT INTO table_Test_Rtimedate(id, d) VALUES (24, date '-3004-04-24')"); // negative year
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2810 stmt.executeUpdate("INSERT INTO table_Test_Rtimedate(id, vc) VALUES (25, '-2004-04-24 11:43:53.654321')"); // negative year
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2811 stmt.executeUpdate("INSERT INTO table_Test_Rtimedate(id, vc) VALUES (26, '-3004-04-24')"); // negative year
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2812
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2813 rs = stmt.executeQuery("SELECT * FROM table_Test_Rtimedate");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2814
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2815 readNextRow(rs, 1, "ts");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2816 readNextRow(rs, 2, "t");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2817 readNextRow(rs, 3, "d");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2818
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2819 readNextRow(rs, 4, "vc");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2820 readNextRow(rs, 5, "vc");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2821 readNextRow(rs, 6, "vc");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2822
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2823 readNextRow(rs, 11, "ts");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2824 readNextRow(rs, 12, "ts");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2825 readNextRow(rs, 13, "ts");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2826 readNextRow(rs, 14, "d");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2827 readNextRow(rs, 15, "d");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2828 readNextRow(rs, 16, "d");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2829 readNextRow(rs, 17, "vc");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2830 readNextRow(rs, 18, "vc");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2831 readNextRow(rs, 19, "vc");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2832
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2833 readNextRow(rs, 21, "ts");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2834 readNextRow(rs, 22, "ts");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2835 readNextRow(rs, 23, "d");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2836 readNextRow(rs, 24, "d");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2837 readNextRow(rs, 25, "vc");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2838 readNextRow(rs, 26, "vc");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2839
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2840 readWarnings(stmt.getWarnings());
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2841 readWarnings(con.getWarnings());
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2842
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2843 con.rollback();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2844 con.setAutoCommit(true);
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2845 // >> true: auto commit should be on by default
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2846 sb.append("0. true\t").append(con.getAutoCommit()).append("\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2847 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2848 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2849 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2850
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2851 closeStmtResSet(stmt, rs);
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2852
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2853 compareExpectedOutput("Test_Rtimedate",
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2854 "0. false false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2855 "1. ts 2004-04-24 11:43:53.123000 to ts: 2004-04-24 11:43:53.123\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2856 "1. ts 2004-04-24 11:43:53.123000 to tm: 11:43:53\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2857 "1. ts 2004-04-24 11:43:53.123000 to dt: 2004-04-24\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2858 "2. t 11:43:53 to ts: 1970-01-01 11:43:53.0\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2859 "2. t 11:43:53 to tm: 11:43:53\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2860 "2. t 11:43:53 to dt: 1970-01-01\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2861 "3. d 2004-04-24 to ts: 2004-04-24 00:00:00.0\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2862 "3. d 2004-04-24 to tm: 00:00:00\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2863 "3. d 2004-04-24 to dt: 2004-04-24\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2864 "4. vc 2004-04-24 11:43:53.654321 to ts: 2004-04-24 11:43:53.654321\n" +
481
076abe23e8a3 Approve changed output.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 478
diff changeset
2865 "4. vc 2004-04-24 11:43:53.654321 to tm: rs.getTime(colnm) failed with error: parsing failed at pos 5 found: '-' in '2004-04-24 11:43:53.654321'\n" +
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2866 "4. vc 2004-04-24 11:43:53.654321 to dt: 2004-04-24\n" +
481
076abe23e8a3 Approve changed output.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 478
diff changeset
2867 "5. vc 11:43:53 to ts: rs.getTimestamp(colnm) failed with error: parsing failed at pos 3 found: ':' in '11:43:53'\n" +
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2868 "5. vc 11:43:53 to tm: 11:43:53\n" +
481
076abe23e8a3 Approve changed output.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 478
diff changeset
2869 "5. vc 11:43:53 to dt: rs.getDate(colnm) failed with error: parsing failed at pos 3 found: ':' in '11:43:53'\n" +
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2870 "6. vc 2004-04-24 to ts: 2004-04-24 00:00:00.0\n" +
481
076abe23e8a3 Approve changed output.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 478
diff changeset
2871 "6. vc 2004-04-24 to tm: rs.getTime(colnm) failed with error: parsing failed at pos 5 found: '-' in '2004-04-24'\n" +
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2872 "6. vc 2004-04-24 to dt: 2004-04-24\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2873 "11. ts 904-04-24 11:43:53.567000 to ts: 0904-04-24 11:43:53.567\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2874 "11. ts 904-04-24 11:43:53.567000 to tm: 11:43:53\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2875 "11. ts 904-04-24 11:43:53.567000 to dt: 0904-04-24\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2876 "12. ts 74-04-24 11:43:53.567000 to ts: 0074-04-24 11:43:53.567\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2877 "12. ts 74-04-24 11:43:53.567000 to tm: 11:43:53\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2878 "12. ts 74-04-24 11:43:53.567000 to dt: 0074-04-24\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2879 "13. ts 4-04-24 11:43:53.567000 to ts: 0004-04-24 11:43:53.567\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2880 "13. ts 4-04-24 11:43:53.567000 to tm: 11:43:53\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2881 "13. ts 4-04-24 11:43:53.567000 to dt: 0004-04-24\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2882 "14. d 904-04-24 to ts: 0904-04-24 00:00:00.0\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2883 "14. d 904-04-24 to tm: 00:00:00\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2884 "14. d 904-04-24 to dt: 0904-04-24\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2885 "15. d 74-04-24 to ts: 0074-04-24 00:00:00.0\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2886 "15. d 74-04-24 to tm: 00:00:00\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2887 "15. d 74-04-24 to dt: 0074-04-24\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2888 "16. d 4-04-24 to ts: 0004-04-24 00:00:00.0\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2889 "16. d 4-04-24 to tm: 00:00:00\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2890 "16. d 4-04-24 to dt: 0004-04-24\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2891 "17. vc 904-04-24 11:43:53.567 to ts: 0904-04-24 11:43:53.567\n" +
481
076abe23e8a3 Approve changed output.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 478
diff changeset
2892 "17. vc 904-04-24 11:43:53.567 to tm: rs.getTime(colnm) failed with error: parsing failed at pos 4 found: '-' in '904-04-24 11:43:53.567'\n" +
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2893 "17. vc 904-04-24 11:43:53.567 to dt: 0904-04-24\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2894 "18. vc 74-04-24 11:43:53.567 to ts: 0074-04-24 11:43:53.567\n" +
481
076abe23e8a3 Approve changed output.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 478
diff changeset
2895 "18. vc 74-04-24 11:43:53.567 to tm: rs.getTime(colnm) failed with error: parsing failed at pos 3 found: '-' in '74-04-24 11:43:53.567'\n" +
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2896 "18. vc 74-04-24 11:43:53.567 to dt: 0074-04-24\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2897 "19. vc 4-04-24 11:43:53.567 to ts: 0004-04-24 11:43:53.567\n" +
481
076abe23e8a3 Approve changed output.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 478
diff changeset
2898 "19. vc 4-04-24 11:43:53.567 to tm: rs.getTime(colnm) failed with error: parsing failed at pos 2 found: '-' in '4-04-24 11:43:53.567'\n" +
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2899 "19. vc 4-04-24 11:43:53.567 to dt: 0004-04-24\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2900 "21. ts -4-04-24 11:43:53.567000 to ts: 0004-04-24 11:43:53.567\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2901 "21. ts -4-04-24 11:43:53.567000 to tm: 11:43:53\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2902 "21. ts -4-04-24 11:43:53.567000 to dt: 0004-04-24\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2903 "22. ts -2004-04-24 11:43:53.567000 to ts: 2004-04-24 11:43:53.567\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2904 "22. ts -2004-04-24 11:43:53.567000 to tm: 11:43:53\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2905 "22. ts -2004-04-24 11:43:53.567000 to dt: 2004-04-24\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2906 "23. d -4-04-24 to ts: 0004-04-24 00:00:00.0\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2907 "23. d -4-04-24 to tm: 00:00:00\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2908 "23. d -4-04-24 to dt: 0004-04-24\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2909 "24. d -3004-04-24 to ts: 3004-04-24 00:00:00.0\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2910 "24. d -3004-04-24 to tm: 00:00:00\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2911 "24. d -3004-04-24 to dt: 3004-04-24\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2912 "25. vc -2004-04-24 11:43:53.654321 to ts: 2004-04-24 11:43:53.654321\n" +
481
076abe23e8a3 Approve changed output.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 478
diff changeset
2913 "25. vc -2004-04-24 11:43:53.654321 to tm: rs.getTime(colnm) failed with error: parsing failed at pos 6 found: '-' in '-2004-04-24 11:43:53.654321'\n" +
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2914 "25. vc -2004-04-24 11:43:53.654321 to dt: 2004-04-24\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2915 "26. vc -3004-04-24 to ts: 3004-04-24 00:00:00.0\n" +
481
076abe23e8a3 Approve changed output.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 478
diff changeset
2916 "26. vc -3004-04-24 to tm: rs.getTime(colnm) failed with error: parsing failed at pos 6 found: '-' in '-3004-04-24'\n" +
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2917 "26. vc -3004-04-24 to dt: 3004-04-24\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2918 "0. true true\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2919 }
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2920
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2921 private void readNextRow(ResultSet rs, int rowseq, String colnm) throws SQLException {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2922 rs.next();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2923 readWarnings(rs.getWarnings());
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2924 rs.clearWarnings();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2925
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2926 // fetch the column value using multiple methods: getString(), getTimestamp(), getTime() and getDate()
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2927 // to test proper conversion and error reporting
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2928 String data = rs.getString("id") + ". " + colnm + " " + rs.getString(colnm) + " to ";
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2929
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2930 // getTimestamp() may raise a conversion warning when the value is of type Time or a String which doesn't match format yyyy-mm-dd hh:mm:ss
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2931 try {
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
2932 sb.append(data).append("ts: ").append(rs.getTimestamp(colnm)).append("\n");
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2933 } catch (SQLException e) {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2934 sb.append("rs.getTimestamp(colnm) failed with error: ").append(e.getMessage()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2935 }
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2936 readWarnings(rs.getWarnings());
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2937 rs.clearWarnings();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2938
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2939 // getTime() may raise a conversion warning when the value is of type Date or a String which doesn't match format hh:mm:ss
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2940 try {
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
2941 sb.append(data).append("tm: ").append(rs.getTime(colnm)).append("\n");
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2942 } catch (SQLException e) {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2943 sb.append("rs.getTime(colnm) failed with error: ").append(e.getMessage()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2944 }
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2945 readWarnings(rs.getWarnings());
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2946 rs.clearWarnings();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2947
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2948 // getDate() may raise a conversion warning when the value is of type Time or a String which doesn't match format yyyy-mm-dd
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2949 try {
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
2950 sb.append(data).append("dt: ").append(rs.getDate(colnm)).append("\n");
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2951 } catch (SQLException e) {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2952 sb.append("rs.getDate(colnm) failed with error: ").append(e.getMessage()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2953 }
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2954 readWarnings(rs.getWarnings());
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2955 rs.clearWarnings();
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2956 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2957
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2958 private void Test_Sbatching() {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2959 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2960
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2961 Statement stmt = null;
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2962 PreparedStatement pstmt = null;
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2963 ResultSet rs = null;
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2964 try {
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2965 con.setAutoCommit(false);
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2966 // >> false: auto commit should be off now
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2967 sb.append("0. false\t").append(con.getAutoCommit()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2968
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
2969 stmt = con.createStatement();
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2970
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2971 sb.append("1. create...");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2972 if (stmt.executeUpdate("CREATE TABLE Test_Sbatching ( id int )") != Statement.SUCCESS_NO_INFO)
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2973 sb.append("Wrong return status\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2974 else
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2975 sb.append("passed\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2976
488
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
2977 // for large batches of DML always set sys.optimizer = 'minimal_pipe'. It makes a big difference in performance.
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
2978 stmt.execute("SET sys.optimizer = 'minimal_pipe'");
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
2979
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2980 // start batching a large amount of inserts
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2981 for (int i = 1; i <= 3432; i++) {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2982 stmt.addBatch("INSERT INTO Test_Sbatching VALUES (" + i + ")");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2983 if (i % 1500 == 0) {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2984 sb.append("2. executing batch (1500 inserts)...");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2985 int[] cnts = stmt.executeBatch();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2986 sb.append("passed\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2987 sb.append("3. checking number of update counts...");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2988 if (cnts.length != 1500)
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2989 sb.append("Invalid size: ").append(cnts.length);
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2990 sb.append(cnts.length).append(" passed\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2991 sb.append("4. checking update counts (should all be 1)...");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2992 for (int j = 0; j < cnts.length; j++) {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2993 if (cnts[j] != 1)
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2994 sb.append("Unexpected value: ").append(cnts[j]);
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2995 }
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2996 sb.append("passed\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2997 con.commit();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2998 }
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
2999 }
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3000 sb.append("5. executing final batch...");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3001 stmt.executeBatch();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3002 con.commit();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3003 sb.append("passed\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3004
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3005 pstmt = con.prepareStatement("INSERT INTO Test_Sbatching VALUES (?)");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3006 // start batching a large amount of prepared inserts using JDBC 4.2 executeLargeBatch()
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3007 for (int i = 1; i <= 3568; i++) {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3008 pstmt.setInt(1, i);
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3009 pstmt.addBatch();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3010 if (i % 3000 == 0) {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3011 sb.append("2. executing batch (3000 inserts)...");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3012 long[] cnts = pstmt.executeLargeBatch();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3013 sb.append("passed\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3014 sb.append("3. checking number of update counts...");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3015 if (cnts.length != 3000)
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3016 sb.append("Invalid size: ").append(cnts.length);
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3017 sb.append(cnts.length).append(" passed\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3018 sb.append("4. checking update counts (should all be 1)...");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3019 for (int j = 0; j < cnts.length; j++) {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3020 if (cnts[j] != 1)
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3021 sb.append("Unexpected value: ").append(cnts[j]);
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3022 }
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3023 sb.append("passed\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3024 con.commit();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3025 }
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3026 }
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3027 sb.append("5. executing final Largebatch...");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3028 pstmt.executeLargeBatch();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3029 con.commit();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3030 sb.append("passed\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3031
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3032 sb.append("6. clearing the batch...");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3033 stmt.clearBatch();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3034 pstmt.clearBatch();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3035 sb.append("passed\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3036
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3037 sb.append("7. checking table count...");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3038 rs = stmt.executeQuery("SELECT COUNT(*) FROM Test_Sbatching");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3039 rs.next();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3040 sb.append(rs.getInt(1)).append(" passed\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3041
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3042 sb.append("8. drop table...");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3043 if (stmt.executeUpdate("DROP TABLE Test_Sbatching") != Statement.SUCCESS_NO_INFO)
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3044 sb.append("Wrong return status\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3045 else
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3046 sb.append("passed\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3047
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3048 // rs.close();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3049 stmt.close();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3050 pstmt.close();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3051
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3052 con.commit();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3053 con.setAutoCommit(true);
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3054 // >> true: auto commit should be on by default
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3055 sb.append("0. true\t").append(con.getAutoCommit()).append("\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3056 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3057 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3058 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3059
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3060 closeStmtResSet(stmt, rs);
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3061 closeStmtResSet(pstmt, null);
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3062
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3063 compareExpectedOutput("Test_Sbatching",
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3064 "0. false false\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3065 "1. create...passed\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3066 "2. executing batch (1500 inserts)...passed\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3067 "3. checking number of update counts...1500 passed\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3068 "4. checking update counts (should all be 1)...passed\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3069 "2. executing batch (1500 inserts)...passed\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3070 "3. checking number of update counts...1500 passed\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3071 "4. checking update counts (should all be 1)...passed\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3072 "5. executing final batch...passed\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3073 "2. executing batch (3000 inserts)...passed\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3074 "3. checking number of update counts...3000 passed\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3075 "4. checking update counts (should all be 1)...passed\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3076 "5. executing final Largebatch...passed\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3077 "6. clearing the batch...passed\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3078 "7. checking table count...7000 passed\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3079 "8. drop table...passed\n" +
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3080 "0. true true\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3081 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3082
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3083 private void Test_Smoreresults() {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3084 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3085
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3086 Statement stmt = null;
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3087 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3088 // >> true: auto commit should be on by default
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3089 sb.append("0. true\t").append(con.getAutoCommit()).append("\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3090
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3091 stmt = con.createStatement();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3092 sb.append("1. more results?...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3093 if (stmt.getMoreResults() != false || stmt.getUpdateCount() != -1)
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3094 sb.append("more results on an unitialised Statement, how can that be?\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3095 sb.append(" nope :)\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3096
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3097 sb.append("2. SELECT 1...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3098 if (stmt.execute("SELECT 1;") == false)
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3099 sb.append("SELECT 1 returns update or no results\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3100 sb.append(" ResultSet :)\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3101
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3102 sb.append("3. more results?...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3103 if (stmt.getMoreResults() != false || stmt.getUpdateCount() != -1)
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3104 sb.append("more results after SELECT 1 query, how can that be?\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3105 sb.append(" nope :)\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3106
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3107 sb.append("4. even more results?...");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3108 if (stmt.getMoreResults() != false)
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3109 sb.append("still more results after SELECT 1 query, how can that be?\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3110 sb.append(" nope :)\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3111
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3112 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3113 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3114 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3115
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3116 closeStmtResSet(stmt, null);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3117
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3118 compareExpectedOutput("Test_Smoreresults",
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3119 "0. true true\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3120 "1. more results?... nope :)\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3121 "2. SELECT 1... ResultSet :)\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3122 "3. more results?... nope :)\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3123 "4. even more results?... nope :)\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3124 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3125
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3126 private void Test_Wrapper() {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3127 sb.setLength(0); // clear the output log buffer
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3128
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3129 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3130 final String jdbc_pkg = "java.sql.";
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3131 final String monetdb_jdbc_pkg = "org.monetdb.jdbc.";
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3132
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3133 sb.append("Auto commit is: ").append(con.getAutoCommit()).append("\n");
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3134
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3135 checkIsWrapperFor("Connection", con, jdbc_pkg, "Connection");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3136 checkIsWrapperFor("Connection", con, monetdb_jdbc_pkg, "MonetConnection");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3137 checkIsWrapperFor("Connection", con, jdbc_pkg, "Statement");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3138 checkIsWrapperFor("Connection", con, monetdb_jdbc_pkg, "MonetStatement");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3139
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3140 DatabaseMetaData dbmd = con.getMetaData();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3141 checkIsWrapperFor("DatabaseMetaData", dbmd, jdbc_pkg, "DatabaseMetaData");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3142 checkIsWrapperFor("DatabaseMetaData", dbmd, monetdb_jdbc_pkg, "MonetDatabaseMetaData");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3143 checkIsWrapperFor("DatabaseMetaData", dbmd, jdbc_pkg, "Statement");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3144 checkIsWrapperFor("DatabaseMetaData", dbmd, monetdb_jdbc_pkg, "MonetStatement");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3145
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3146 ResultSet rs = dbmd.getSchemas();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3147 checkIsWrapperFor("ResultSet", rs, jdbc_pkg, "ResultSet");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3148 checkIsWrapperFor("ResultSet", rs, monetdb_jdbc_pkg, "MonetResultSet");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3149 checkIsWrapperFor("ResultSet", rs, jdbc_pkg, "Statement");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3150 checkIsWrapperFor("ResultSet", rs, monetdb_jdbc_pkg, "MonetStatement");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3151
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3152 ResultSetMetaData rsmd = rs.getMetaData();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3153 checkIsWrapperFor("ResultSetMetaData", rsmd, jdbc_pkg, "ResultSetMetaData");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3154 checkIsWrapperFor("ResultSetMetaData", rsmd, monetdb_jdbc_pkg, "MonetResultSet");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3155 checkIsWrapperFor("ResultSetMetaData", rsmd, monetdb_jdbc_pkg, "MonetResultSet$rsmdw"); // it is a private class of MonetResultSet
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3156 checkIsWrapperFor("ResultSetMetaData", rsmd, jdbc_pkg, "Statement");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3157 checkIsWrapperFor("ResultSetMetaData", rsmd, monetdb_jdbc_pkg, "MonetStatement");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3158
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3159 rs.close();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3160
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3161 Statement stmt = con.createStatement();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3162 checkIsWrapperFor("Statement", stmt, jdbc_pkg, "Statement");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3163 checkIsWrapperFor("Statement", stmt, monetdb_jdbc_pkg, "MonetStatement");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3164 checkIsWrapperFor("Statement", stmt, jdbc_pkg, "Connection");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3165 checkIsWrapperFor("Statement", stmt, monetdb_jdbc_pkg, "MonetConnection");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3166
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3167 stmt.close();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3168
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3169 PreparedStatement pstmt = con.prepareStatement("SELECT name FROM sys.tables WHERE system AND name like ?");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3170 checkIsWrapperFor("PreparedStatement", pstmt, jdbc_pkg, "PreparedStatement");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3171 checkIsWrapperFor("PreparedStatement", pstmt, monetdb_jdbc_pkg, "MonetPreparedStatement");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3172 checkIsWrapperFor("PreparedStatement", pstmt, jdbc_pkg, "Statement");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3173 checkIsWrapperFor("PreparedStatement", pstmt, monetdb_jdbc_pkg, "MonetStatement");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3174 checkIsWrapperFor("PreparedStatement", pstmt, jdbc_pkg, "Connection");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3175 checkIsWrapperFor("PreparedStatement", pstmt, monetdb_jdbc_pkg, "MonetConnection");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3176
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3177 ParameterMetaData pmd = pstmt.getParameterMetaData();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3178 checkIsWrapperFor("ParameterMetaData", pmd, jdbc_pkg, "ParameterMetaData");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3179 checkIsWrapperFor("ParameterMetaData", pmd, monetdb_jdbc_pkg, "MonetPreparedStatement");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3180 checkIsWrapperFor("ParameterMetaData", pmd, monetdb_jdbc_pkg, "MonetPreparedStatement$pmdw"); // it is a private class of MonetPreparedStatement
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3181 checkIsWrapperFor("ParameterMetaData", pmd, jdbc_pkg, "Connection");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3182 checkIsWrapperFor("ParameterMetaData", pmd, monetdb_jdbc_pkg, "MonetConnection");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3183
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3184 ResultSetMetaData psrsmd = pstmt.getMetaData();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3185 checkIsWrapperFor("PrepStmt ResultSetMetaData", psrsmd, jdbc_pkg, "ResultSetMetaData");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3186 checkIsWrapperFor("PrepStmt ResultSetMetaData", psrsmd, monetdb_jdbc_pkg, "MonetPreparedStatement");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3187 checkIsWrapperFor("PrepStmt ResultSetMetaData", psrsmd, monetdb_jdbc_pkg, "MonetPreparedStatement$rsmdw"); // it is a private class of MonetPreparedStatement
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3188 checkIsWrapperFor("PrepStmt ResultSetMetaData", psrsmd, jdbc_pkg, "Connection");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3189 checkIsWrapperFor("PrepStmt ResultSetMetaData", psrsmd, monetdb_jdbc_pkg, "MonetConnection");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3190
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3191 pstmt.close();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3192
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3193 } catch (SQLException e) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3194 while ((e = e.getNextException()) != null)
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3195 sb.append("FAILED: ").append(e.getMessage()).append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3196 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3197
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3198 compareExpectedOutput("Test_Wrapper", "Auto commit is: true\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3199 "Connection. isWrapperFor(Connection) returns: true Called unwrap(). Returned object is not null, so oke\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3200 "Connection. isWrapperFor(MonetConnection) returns: true Called unwrap(). Returned object is not null, so oke\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3201 "Connection. isWrapperFor(Statement) returns: false\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3202 "Connection. isWrapperFor(MonetStatement) returns: false\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3203 "DatabaseMetaData. isWrapperFor(DatabaseMetaData) returns: true Called unwrap(). Returned object is not null, so oke\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3204 "DatabaseMetaData. isWrapperFor(MonetDatabaseMetaData) returns: true Called unwrap(). Returned object is not null, so oke\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3205 "DatabaseMetaData. isWrapperFor(Statement) returns: false\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3206 "DatabaseMetaData. isWrapperFor(MonetStatement) returns: false\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3207 "ResultSet. isWrapperFor(ResultSet) returns: true Called unwrap(). Returned object is not null, so oke\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3208 "ResultSet. isWrapperFor(MonetResultSet) returns: true Called unwrap(). Returned object is not null, so oke\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3209 "ResultSet. isWrapperFor(Statement) returns: false\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3210 "ResultSet. isWrapperFor(MonetStatement) returns: false\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3211 "ResultSetMetaData. isWrapperFor(ResultSetMetaData) returns: true Called unwrap(). Returned object is not null, so oke\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3212 "ResultSetMetaData. isWrapperFor(MonetResultSet) returns: false\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3213 "ResultSetMetaData. isWrapperFor(MonetResultSet$rsmdw) returns: true Called unwrap(). Returned object is not null, so oke\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3214 "ResultSetMetaData. isWrapperFor(Statement) returns: false\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3215 "ResultSetMetaData. isWrapperFor(MonetStatement) returns: false\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3216 "Statement. isWrapperFor(Statement) returns: true Called unwrap(). Returned object is not null, so oke\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3217 "Statement. isWrapperFor(MonetStatement) returns: true Called unwrap(). Returned object is not null, so oke\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3218 "Statement. isWrapperFor(Connection) returns: false\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3219 "Statement. isWrapperFor(MonetConnection) returns: false\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3220 "PreparedStatement. isWrapperFor(PreparedStatement) returns: true Called unwrap(). Returned object is not null, so oke\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3221 "PreparedStatement. isWrapperFor(MonetPreparedStatement) returns: true Called unwrap(). Returned object is not null, so oke\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3222 "PreparedStatement. isWrapperFor(Statement) returns: true Called unwrap(). Returned object is not null, so oke\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3223 "PreparedStatement. isWrapperFor(MonetStatement) returns: true Called unwrap(). Returned object is not null, so oke\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3224 "PreparedStatement. isWrapperFor(Connection) returns: false\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3225 "PreparedStatement. isWrapperFor(MonetConnection) returns: false\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3226 "ParameterMetaData. isWrapperFor(ParameterMetaData) returns: true Called unwrap(). Returned object is not null, so oke\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3227 "ParameterMetaData. isWrapperFor(MonetPreparedStatement) returns: false\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3228 "ParameterMetaData. isWrapperFor(MonetPreparedStatement$pmdw) returns: true Called unwrap(). Returned object is not null, so oke\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3229 "ParameterMetaData. isWrapperFor(Connection) returns: false\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3230 "ParameterMetaData. isWrapperFor(MonetConnection) returns: false\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3231 "PrepStmt ResultSetMetaData. isWrapperFor(ResultSetMetaData) returns: true Called unwrap(). Returned object is not null, so oke\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3232 "PrepStmt ResultSetMetaData. isWrapperFor(MonetPreparedStatement) returns: false\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3233 "PrepStmt ResultSetMetaData. isWrapperFor(MonetPreparedStatement$rsmdw) returns: true Called unwrap(). Returned object is not null, so oke\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3234 "PrepStmt ResultSetMetaData. isWrapperFor(Connection) returns: false\n" +
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3235 "PrepStmt ResultSetMetaData. isWrapperFor(MonetConnection) returns: false\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3236 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3237
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3238 private void checkIsWrapperFor(String objnm, Wrapper obj, String pkgnm, String classnm) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3239 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3240 Class<?> clazz = Class.forName(pkgnm + classnm);
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3241 boolean isWrapper = obj.isWrapperFor(clazz);
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3242 sb.append(objnm).append(". isWrapperFor(").append(classnm).append(") returns: ").append(isWrapper);
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3243 if (isWrapper) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3244 Object wobj = obj.unwrap(clazz);
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
3245 sb.append("\tCalled unwrap(). Returned object is ").append((wobj != null ? "not null, so oke" : "null !!"));
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3246 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3247 sb.append("\n");
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3248 } catch (ClassNotFoundException cnfe) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3249 sb.append(cnfe.toString());
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3250 } catch (SQLException se) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3251 sb.append(se.getMessage());
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3252 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3253 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
3254
453
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3255 private void bogus_auto_generated_keys() {
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3256 sb.setLength(0); // clear the output log buffer
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3257
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3258 Statement stmt = null;
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3259 ResultSet rs = null;
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3260 int upd = 0;
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3261 try {
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3262 stmt = con.createStatement();
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3263 sb.append("1. create table...");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3264 // create a simple table with an auto-generated key (id)
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3265 upd = stmt.executeUpdate("CREATE TABLE bogus_gen_keys (\n \"id\" serial,\n \"x\" varchar(12)\n);");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3266 if (upd != Statement.SUCCESS_NO_INFO)
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3267 sb.append("Wrong return status: ").append(upd).append("\n");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3268 else
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3269 sb.append("passed\n");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3270
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3271 // perform an update, useless, but illustrates the bug, this time no
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3272 // generated key is reported, which is correct
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3273 sb.append("2. update empty table...");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3274 upd = stmt.executeUpdate("UPDATE bogus_gen_keys SET \"x\" = 'bla' WHERE \"id\" = 12;");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3275 if (upd != 0)
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3276 sb.append("Wrong return status: ").append(upd).append("\n");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3277 else
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3278 sb.append("passed\n");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3279
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3280 // insert some value, should get a generated key
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3281 sb.append("3. insert 1 row ...");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3282 upd = stmt.executeUpdate("INSERT INTO bogus_gen_keys (\"x\") VALUES ('boe');");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3283 if (upd != 1)
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3284 sb.append("Wrong return status: ").append(upd).append("\n");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3285 else
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3286 sb.append("passed\n");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3287
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3288 sb.append("4. show values of inserted row ...");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3289 rs = stmt.executeQuery("SELECT \"id\", \"x\" from bogus_gen_keys;");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3290 if (rs != null && rs.next()) {
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3291 sb.append(" id: ").append(rs.getString(1)).append(" x: ").append(rs.getString(2));
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3292 }
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3293 sb.append("\n");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3294
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3295 // update again, we expect NO generated key, but we DO get one
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3296 sb.append("5. update row 1...");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3297 upd = stmt.executeUpdate("UPDATE bogus_gen_keys SET \"x\" = 'bla' WHERE \"id\" = 1;");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3298 if (upd != 1)
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3299 sb.append("Wrong return status: ").append(upd).append("\n");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3300 else
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3301 sb.append("passed\n");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3302
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3303 sb.append("6. update row 12...");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3304 upd = stmt.executeUpdate("UPDATE bogus_gen_keys SET \"x\" = 'bla' WHERE \"id\" = 12;");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3305 if (upd != 0)
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3306 sb.append("Wrong return status: ").append(upd).append("\n");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3307 else
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3308 sb.append("passed\n");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3309 } catch (SQLException e) {
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3310 sb.append("FAILED: ").append(e.getMessage()).append("\n");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3311 }
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3312
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3313 // cleanup
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3314 try {
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3315 sb.append("7. drop table...");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3316 upd = stmt.executeUpdate("DROP TABLE bogus_gen_keys");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3317 if (upd != Statement.SUCCESS_NO_INFO)
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3318 sb.append("Wrong return status: ").append(upd).append("\n");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3319 else
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3320 sb.append("passed\n");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3321 } catch (SQLException e) {
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3322 sb.append("FAILED: ").append(e.getMessage()).append("\n");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3323 }
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3324
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3325 closeStmtResSet(stmt, rs);
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3326
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3327 compareExpectedOutput("bogus_auto_generated_keys",
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3328 "1. create table...passed\n" +
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3329 "2. update empty table...passed\n" +
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3330 "3. insert 1 row ...passed\n" +
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3331 "4. show values of inserted row ... id: 1 x: boe\n" +
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3332 "5. update row 1...passed\n" +
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3333 "6. update row 12...passed\n" +
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3334 "7. drop table...passed\n");
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3335 }
33756aa67a40 Converted and added test bogus-auto-generated-keys (which is currently run via JdbcClient)
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 452
diff changeset
3336
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3337 private void BugConcurrent_clients_SF_1504657(String arg0) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3338 sb.setLength(0); // clear the output log buffer
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3339
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3340 Connection con1 = null, con2 = null, con3 = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3341 Statement stmt1 = null, stmt2 = null, stmt3 = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3342 ResultSet rs1 = null, rs2= null, rs3 = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3343 try {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3344 con1 = DriverManager.getConnection(arg0);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3345 con2 = DriverManager.getConnection(arg0);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3346 con3 = DriverManager.getConnection(arg0);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3347 stmt1 = con1.createStatement();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3348 stmt2 = con2.createStatement();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3349 stmt3 = con3.createStatement();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3350
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3351 // >> true: auto commit should be on by default
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3352 sb.append("0. true\t").append(con1.getAutoCommit()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3353 sb.append("0. true\t").append(con2.getAutoCommit()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3354 sb.append("0. true\t").append(con3.getAutoCommit()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3355
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3356 // test the creation of a table with concurrent clients
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3357 sb.append("1.1. create table t1504657 using client 1...\n");
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3358 stmt1.executeUpdate("CREATE TABLE t1504657 ( id int, name varchar(1024) )");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3359 sb.append("passed :)\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3360
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3361 sb.append("1.2. check table existence in client 2...\n");
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3362 rs2 = stmt2.executeQuery("SELECT name FROM tables where name LIKE 't1504657'");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3363 while (rs2.next())
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3364 sb.append(rs2.getString("name")).append("\n");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3365 sb.append("passed :)\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3366
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3367 sb.append("1.3. check table existence in client 3...\n");
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3368 rs3 = stmt3.executeQuery("SELECT name FROM tables where name LIKE 't1504657'");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3369 while (rs3.next())
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3370 sb.append(rs3.getString("name")).append("\n");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3371 sb.append("passed :)\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3372
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3373 // test the insertion of values with concurrent clients
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3374 sb.append("2 insert into t1504657 using client 1...\n");
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3375 stmt1.executeUpdate("INSERT INTO t1504657 values( 1, 'monetdb' )");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3376 sb.append("passed :)\n");
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3377 stmt1.executeUpdate("INSERT INTO t1504657 values( 2, 'monet' )");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3378 sb.append("passed :)\n");
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3379 stmt1.executeUpdate("INSERT INTO t1504657 values( 3, 'mon' )");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3380 sb.append("passed :)\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3381
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3382 sb.append("2.1. check table status with client 1...\n");
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3383 rs1 = stmt1.executeQuery("SELECT * FROM t1504657");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3384 while (rs1.next())
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3385 sb.append(rs1.getInt("id")).append(", ").append(rs1.getString("name")).append("\n");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3386 sb.append("passed :)\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3387
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3388 sb.append("2.2. check table status with client 2...\n");
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3389 rs2 = stmt2.executeQuery("SELECT * FROM t1504657");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3390 while (rs2.next())
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3391 sb.append(rs2.getInt("id")).append(", ").append(rs2.getString("name")).append("\n");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3392 sb.append("passed :)\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3393
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3394 sb.append("2.3. check table status with client 3...\n");
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3395 rs3 = stmt3.executeQuery("SELECT * FROM t1504657");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3396 while (rs3.next())
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3397 sb.append(rs3.getInt("id")).append(", ").append(rs3.getString("name")).append("\n");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3398 sb.append("passed :)\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3399
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3400 // test the insertion of values with concurrent clients
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3401 sb.append("3 insert into t1504657 using client 2...\n");
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3402 stmt2.executeUpdate("INSERT INTO t1504657 values( 4, 'monetdb' )");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3403 sb.append("passed :)\n");
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3404 stmt2.executeUpdate("INSERT INTO t1504657 values( 5, 'monet' )");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3405 sb.append("passed :)\n");
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3406 stmt2.executeUpdate("INSERT INTO t1504657 values( 6, 'mon' )");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3407 sb.append("passed :)\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3408
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3409 sb.append("3.1. check table status with client 1...\n");
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3410 rs1 = stmt1.executeQuery("SELECT * FROM t1504657");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3411 while (rs1.next())
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3412 sb.append(rs1.getInt("id")).append(", ").append(rs1.getString("name")).append("\n");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3413 sb.append("passed :)\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3414
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3415 sb.append("3.2. check table status with client 2...\n");
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3416 rs2 = stmt2.executeQuery("SELECT * FROM t1504657");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3417 while (rs2.next())
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3418 sb.append(rs2.getInt("id")).append(", ").append(rs2.getString("name")).append("\n");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3419 sb.append("passed :)\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3420
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3421 sb.append("3.3. check table status with client 3...\n");
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3422 rs3 = stmt3.executeQuery("SELECT * FROM t1504657");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3423 while (rs3.next())
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3424 sb.append(rs3.getInt("id")).append(", ").append(rs3.getString("name")).append("\n");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3425 sb.append("passed :)\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3426
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3427 // test the insertion of values with concurrent clients
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3428 sb.append("4 insert into t1504657 using client 3...\n");
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3429 stmt3.executeUpdate("INSERT INTO t1504657 values( 7, 'monetdb' )");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3430 sb.append("passed :)\n");
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3431 stmt3.executeUpdate("INSERT INTO t1504657 values( 8, 'monet' )");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3432 sb.append("passed :)\n");
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3433 stmt3.executeUpdate("INSERT INTO t1504657 values( 9, 'mon' )");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3434 sb.append("passed :)\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3435
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3436 sb.append("4.1. check table status with client 1...\n");
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3437 rs1 = stmt1.executeQuery("SELECT * FROM t1504657");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3438 while (rs1.next())
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3439 sb.append(rs1.getInt("id")).append(", ").append(rs1.getString("name")).append("\n");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3440 sb.append("passed :)\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3441
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3442 sb.append("4.2. check table status with client 2...\n");
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3443 rs2 = stmt2.executeQuery("SELECT * FROM t1504657");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3444 while (rs2.next())
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3445 sb.append(rs2.getInt("id")).append(", ").append(rs2.getString("name")).append("\n");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3446 sb.append("passed :)\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3447
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3448 sb.append("4.3. check table status with client 3...\n");
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3449 rs3 = stmt3.executeQuery("SELECT * FROM t1504657");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3450 while (rs3.next())
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3451 sb.append(rs3.getInt("id")).append(", ").append(rs3.getString("name")).append("\n");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3452 sb.append("passed :)\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3453 } catch (SQLException e) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3454 sb.append("FAILED: ").append(e.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3455 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3456
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3457 // cleanup
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3458 try {
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3459 sb.append("Cleanup TABLE t1504657\n");
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3460 stmt3.executeUpdate("DROP TABLE t1504657");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3461 } catch (SQLException e) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3462 sb.append("FAILED: ").append(e.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3463 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3464
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3465 closeStmtResSet(stmt3, rs3);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3466 closeStmtResSet(stmt1, rs1);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3467 closeStmtResSet(stmt2, rs2);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3468
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3469 closeConx(con2);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3470 closeConx(con1);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3471 closeConx(con3);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3472
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3473 compareExpectedOutput("BugConcurrent_clients_SF_1504657",
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3474 "0. true true\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3475 "0. true true\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3476 "0. true true\n" +
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3477 "1.1. create table t1504657 using client 1...\n" +
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3478 "passed :)\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3479 "1.2. check table existence in client 2...\n" +
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3480 "t1504657\n" +
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3481 "passed :)\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3482 "1.3. check table existence in client 3...\n" +
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3483 "t1504657\n" +
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3484 "passed :)\n" +
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3485 "2 insert into t1504657 using client 1...\n" +
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3486 "passed :)\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3487 "passed :)\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3488 "passed :)\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3489 "2.1. check table status with client 1...\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3490 "1, monetdb\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3491 "2, monet\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3492 "3, mon\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3493 "passed :)\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3494 "2.2. check table status with client 2...\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3495 "1, monetdb\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3496 "2, monet\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3497 "3, mon\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3498 "passed :)\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3499 "2.3. check table status with client 3...\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3500 "1, monetdb\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3501 "2, monet\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3502 "3, mon\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3503 "passed :)\n" +
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3504 "3 insert into t1504657 using client 2...\n" +
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3505 "passed :)\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3506 "passed :)\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3507 "passed :)\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3508 "3.1. check table status with client 1...\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3509 "1, monetdb\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3510 "2, monet\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3511 "3, mon\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3512 "4, monetdb\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3513 "5, monet\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3514 "6, mon\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3515 "passed :)\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3516 "3.2. check table status with client 2...\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3517 "1, monetdb\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3518 "2, monet\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3519 "3, mon\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3520 "4, monetdb\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3521 "5, monet\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3522 "6, mon\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3523 "passed :)\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3524 "3.3. check table status with client 3...\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3525 "1, monetdb\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3526 "2, monet\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3527 "3, mon\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3528 "4, monetdb\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3529 "5, monet\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3530 "6, mon\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3531 "passed :)\n" +
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3532 "4 insert into t1504657 using client 3...\n" +
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3533 "passed :)\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3534 "passed :)\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3535 "passed :)\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3536 "4.1. check table status with client 1...\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3537 "1, monetdb\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3538 "2, monet\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3539 "3, mon\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3540 "4, monetdb\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3541 "5, monet\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3542 "6, mon\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3543 "7, monetdb\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3544 "8, monet\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3545 "9, mon\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3546 "passed :)\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3547 "4.2. check table status with client 2...\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3548 "1, monetdb\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3549 "2, monet\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3550 "3, mon\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3551 "4, monetdb\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3552 "5, monet\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3553 "6, mon\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3554 "7, monetdb\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3555 "8, monet\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3556 "9, mon\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3557 "passed :)\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3558 "4.3. check table status with client 3...\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3559 "1, monetdb\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3560 "2, monet\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3561 "3, mon\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3562 "4, monetdb\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3563 "5, monet\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3564 "6, mon\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3565 "7, monetdb\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3566 "8, monet\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3567 "9, mon\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3568 "passed :)\n" +
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3569 "Cleanup TABLE t1504657\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3570 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3571
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3572 private void BugConcurrent_sequences(String arg0) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3573 sb.setLength(0); // clear the output log buffer
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3574
458
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3575 boolean isPostOct2020 = false;
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3576 Connection con1 = null, con2 = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3577 Statement stmt1 = null, stmt2 = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3578 ResultSet rs1 = null, rs2 = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3579 try {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3580 con1 = DriverManager.getConnection(arg0);
458
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3581 DatabaseMetaData dbmd = con1.getMetaData();
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3582 isPostOct2020 = (dbmd.getDatabaseMajorVersion() >=11) && (dbmd.getDatabaseMinorVersion() > 39);
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3583 con2 = DriverManager.getConnection(arg0);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3584 stmt1 = con1.createStatement();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3585 stmt2 = con2.createStatement();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3586
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3587 // >> true: auto commit should be on by default
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3588 sb.append("0. true\t").append(con1.getAutoCommit()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3589 sb.append("0. true\t").append(con2.getAutoCommit()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3590
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3591 // create a table
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3592 sb.append("1. create table tconc_seq using client 1... ");
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3593 stmt1.executeUpdate("CREATE TABLE tconc_seq ( id serial, who varchar(12) )");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3594 sb.append("passed :)\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3595
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3596 // test the insertion of values with concurrent clients
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3597 sb.append("2. insert into tconc_seq using client 1 and 2... ");
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3598 stmt1.executeUpdate("INSERT INTO tconc_seq(who) VALUES('client1')");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3599 sb.append("client 1 passed :)\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3600
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3601 con2.setAutoCommit(false);
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3602 stmt2.executeUpdate("INSERT INTO tconc_seq(who) VALUES('client2')");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3603 sb.append("transaction on client 2 :)\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3604
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3605 stmt1.executeUpdate("INSERT INTO tconc_seq(who) VALUES('client1')");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3606 sb.append("client 1 passed :)\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3607
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3608 try {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3609 con2.commit();
458
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3610 sb.append("transaction client 2 passed :)\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3611 } catch (SQLException e) {
458
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3612 sb.append("transaction client 2 failed!\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3613 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3614 con2.setAutoCommit(true);
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3615 stmt2.executeUpdate("INSERT INTO tconc_seq(who) VALUES('client2')");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3616 sb.append("passed :)\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3617
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3618 sb.append("2.1. check table status with client 1...\n");
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3619 rs1 = stmt1.executeQuery("SELECT * FROM tconc_seq");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3620 while (rs1.next())
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3621 sb.append(rs1.getInt("id")).append(", ").append(rs1.getString("who")).append("\n");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3622 sb.append("passed :)\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3623
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3624 sb.append("2.2. check table status with client 2...\n");
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3625 rs2 = stmt2.executeQuery("SELECT * FROM tconc_seq");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3626 while (rs2.next())
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3627 sb.append(rs2.getInt("id")).append(", ").append(rs2.getString("who")).append("\n");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3628 sb.append("passed :)\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3629
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3630 // drop the table (not dropping the sequence) from client 1
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3631 sb.append("3.1. drop table tconc_seq using client 1... ");
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3632 stmt1.executeUpdate("DROP TABLE tconc_seq");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3633 sb.append("passed :)\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3634
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3635 sb.append("3.1. recreate tconc_seq using client 1... ");
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3636 stmt1.executeUpdate("CREATE TABLE tconc_seq ( id serial, who varchar(12) )");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3637 sb.append("passed :)\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3638 } catch (SQLException e) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3639 sb.append("FAILED: ").append(e.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3640 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3641
458
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3642 compareExpectedOutput("BugConcurrent_sequences",
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3643 isPostOct2020 ?
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3644 "0. true true\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3645 "0. true true\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3646 "1. create table tconc_seq using client 1... passed :)\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3647 "2. insert into tconc_seq using client 1 and 2... client 1 passed :)\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3648 "transaction on client 2 :)\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3649 "client 1 passed :)\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3650 "transaction client 2 passed :)\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3651 "passed :)\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3652 "2.1. check table status with client 1...\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3653 "1, client1\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3654 "2, client2\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3655 "3, client1\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3656 "4, client2\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3657 "passed :)\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3658 "2.2. check table status with client 2...\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3659 "1, client1\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3660 "2, client2\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3661 "3, client1\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3662 "4, client2\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3663 "passed :)\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3664 "3.1. drop table tconc_seq using client 1... passed :)\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3665 "3.1. recreate tconc_seq using client 1... passed :)\n"
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3666 : // behavior of older MonetDB versions (up to Oct2020 release) was different
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3667 "0. true true\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3668 "0. true true\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3669 "1. create table tconc_seq using client 1... passed :)\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3670 "2. insert into tconc_seq using client 1 and 2... client 1 passed :)\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3671 "transaction on client 2 :)\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3672 "client 1 passed :)\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3673 "transaction client 2 failed!\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3674 "passed :)\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3675 "2.1. check table status with client 1...\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3676 "1, client1\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3677 "3, client1\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3678 "4, client2\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3679 "passed :)\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3680 "2.2. check table status with client 2...\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3681 "1, client1\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3682 "3, client1\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3683 "4, client2\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3684 "passed :)\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3685 "3.1. drop table tconc_seq using client 1... passed :)\n" +
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3686 "3.1. recreate tconc_seq using client 1... passed :)\n");
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3687 sb.setLength(0); // clear the output log buffer
333c3752e118 Adjust test BugConcurrent_sequences to check for the version of MonetDB server and accept the post Oct2020 server response as correct.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 453
diff changeset
3688
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3689 try {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3690 // re-establish connection
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3691 sb.append("x. Reconnecting client 1 and 2... ");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3692 con1.close();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3693 con2.close();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3694 con1 = DriverManager.getConnection(arg0);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3695 con2 = DriverManager.getConnection(arg0);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3696 stmt1 = con1.createStatement();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3697 stmt2 = con2.createStatement();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3698 sb.append("passed :)\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3699
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3700 // insert and print, should get 1,2
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3701 sb.append("4. insert into tconc_seq using client 1 and 2...\n");
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3702 stmt1.executeUpdate("INSERT INTO tconc_seq(who) VALUES('client1')");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3703 sb.append("passed :)\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3704 con2.setAutoCommit(false);
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3705 stmt2.executeUpdate("INSERT INTO tconc_seq(who) VALUES('client2')");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3706 con2.commit();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3707 con2.setAutoCommit(true);
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3708 sb.append("passed :)\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3709
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3710 sb.append("4.1. check table status with client 1...\n");
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3711 rs1 = stmt1.executeQuery("SELECT * FROM tconc_seq ORDER BY who");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3712 for (int cntr = 1; rs1.next(); cntr++) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3713 int id = rs1.getInt("id");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3714 sb.append(id).append(", ").append(rs1.getString("who")).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3715 if (id != cntr)
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3716 sb.append("!! expected ").append(cntr).append(", got ").append(id);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3717 }
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3718 sb.append("passed :)\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3719
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3720 sb.append("4.2. check table status with client 2...\n");
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3721 rs2 = stmt2.executeQuery("SELECT * FROM tconc_seq ORDER BY who");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3722 for (int cntr = 1; rs2.next(); cntr++) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3723 int id = rs2.getInt("id");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3724 sb.append(id).append(", ").append(rs2.getString("who")).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3725 if (id != cntr)
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3726 sb.append("!! expected ").append(cntr).append(", got ").append(id);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3727 }
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3728 sb.append("passed :)\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3729 } catch (SQLException e) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3730 sb.append("FAILED: ").append(e.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3731 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3732
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3733 // cleanup
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3734 try {
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3735 sb.append("Cleanup TABLE tconc_seq\n");
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3736 stmt2.executeUpdate("DROP TABLE tconc_seq");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3737 } catch (SQLException e) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3738 sb.append("FAILED: ").append(e.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3739 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3740
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3741 closeStmtResSet(stmt1, rs1);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3742 closeStmtResSet(stmt2, rs2);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3743
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3744 closeConx(con2);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3745 closeConx(con1);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3746
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3747 compareExpectedOutput("BugConcurrent_sequences",
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3748 "x. Reconnecting client 1 and 2... passed :)\n" +
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3749 "4. insert into tconc_seq using client 1 and 2...\n" +
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3750 "passed :)\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3751 "passed :)\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3752 "4.1. check table status with client 1...\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3753 "1, client1\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3754 "2, client2\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3755 "passed :)\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3756 "4.2. check table status with client 2...\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3757 "1, client1\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3758 "2, client2\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3759 "passed :)\n" +
452
64789c018991 Avoid using table names called t1 in tests, make them more unique.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 450
diff changeset
3760 "Cleanup TABLE tconc_seq\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3761 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3762
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3763 private void Bug_Connect_as_voc_getMetaData_Failure_Bug_6388(String arg0) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3764 sb.setLength(0); // clear the output log buffer
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3765
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3766 Statement stmt1 = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3767 // create user, schema and alter schema default schema
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3768 try {
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3769 sb.append("1. CREATE USER voc\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3770 stmt1 = con.createStatement();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3771 stmt1.executeUpdate("CREATE USER \"voc\" WITH PASSWORD 'voc' NAME 'VOC Explorer' SCHEMA \"sys\"");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3772 sb.append("2. CREATE SCHEMA voc\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3773 stmt1.executeUpdate("CREATE SCHEMA \"voc\" AUTHORIZATION \"voc\"");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3774 sb.append("3. ALTER USER voc\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3775 stmt1.executeUpdate("ALTER USER \"voc\" SET SCHEMA \"voc\"");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3776 sb.append("creation succeeded :)\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3777 } catch (SQLException e) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3778 sb.append("FAILED creating user and schema voc. ").append(e.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3779 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3780
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3781 Connection con2 = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3782 ResultSet rs2 = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3783 try {
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3784 sb.append("4.1. connect as user: voc\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3785 con2 = DriverManager.getConnection(arg0.replace("=monetdb", "=voc"));
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3786 sb.append("connected :)\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3787
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3788 DatabaseMetaData dbmd = con2.getMetaData();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3789
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3790 sb.append("4.2. getUserName()\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3791 sb.append("UserName = ").append(dbmd.getUserName()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3792
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3793 sb.append("4.3. getMaxConnections()\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3794 sb.append("MaxConnections = ").append(dbmd.getMaxConnections()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3795
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3796 sb.append("4.4. getDatabaseProductVersion()\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3797 String dbmsVersion = dbmd.getDatabaseProductVersion(); // should be 11.35.1 or higher
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3798 boolean postNov2019 = ("11.35.1".compareTo(dbmsVersion) <= 0);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3799 sb.append("DatabaseProductVersion = ").append((postNov2019 ? "11.35.+" : dbmsVersion)).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3800
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3801 sb.append("4.5. getDatabaseMajorVersion()\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3802 sb.append("DatabaseMajorVersion = ").append(dbmd.getDatabaseMajorVersion()).append("\n"); // should be 11
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3803
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3804 sb.append("4.6. getDatabaseMinorVersion()\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3805 int dbmsMinorVersion = dbmd.getDatabaseMinorVersion(); // should be 35 or higher
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3806 sb.append("DatabaseMinorVersion = ").append((dbmsMinorVersion >= 35 ? "35+" : dbmsMinorVersion)).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3807
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3808 sb.append("4.7. getTables(null, 'tmp', null, null)\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3809 rs2 = dbmd.getTables(null, "tmp", null, null);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3810 if (rs2 != null) {
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3811 sb.append("List Tables in schema tmp:\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3812 while (rs2.next()) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3813 sb.append(rs2.getString(3)).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3814 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3815 rs2.close();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3816 }
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3817 sb.append("completed listing Tables in schema tmp\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3818
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3819 sb.append("4.8. getTableTypes()\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3820 rs2 = dbmd.getTableTypes();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3821 if (rs2 != null) {
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3822 sb.append("List TableTypes:\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3823 while (rs2.next()) {
488
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
3824 String tt = rs2.getString(1);
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3825 // post Oct2020 releases the STREAM TABLE type is removed, so filter it out for a stable output
488
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
3826 if (!"STREAM TABLE".equals(tt))
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
3827 sb.append(tt).append("\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3828 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3829 rs2.close();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3830 }
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3831 sb.append("completed listing TableTypes\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3832
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3833 sb.append("voc meta data Test completed successfully\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3834 } catch (SQLException e) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3835 sb.append("FAILED fetching MonetDatabaseMetaData. ").append(e.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3836 } finally {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3837 try {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3838 con2.close();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3839 } catch (SQLException e) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3840 sb.append("FAILED to close voc connection. ").append(e.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3841 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3842 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3843
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3844 // cleanup: drop user, schema and alter schema default schema in reverse order
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3845 try {
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3846 sb.append("Cleanup created objects\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3847 sb.append("5. ALTER USER voc\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3848 stmt1.executeUpdate("ALTER USER \"voc\" SET SCHEMA \"sys\"");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3849 sb.append("6. DROP SCHEMA voc\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3850 stmt1.executeUpdate("DROP SCHEMA \"voc\"");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3851 sb.append("7. DROP USER voc\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3852 stmt1.executeUpdate("DROP USER \"voc\"");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
3853 sb.append("cleanup succeeded :)\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3854 } catch (SQLException e) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3855 sb.append("FAILED dropping user and schema voc. ").append(e.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3856 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3857
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3858 closeConx(con2);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3859 closeStmtResSet(stmt1, null);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3860
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3861 compareExpectedOutput("Bug_Connect_as_voc_getMetaData_Failure_Bug_6388",
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3862 "1. CREATE USER voc\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3863 "2. CREATE SCHEMA voc\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3864 "3. ALTER USER voc\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3865 "creation succeeded :)\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3866 "4.1. connect as user: voc\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3867 "connected :)\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3868 "4.2. getUserName()\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3869 "UserName = voc\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3870 "4.3. getMaxConnections()\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3871 "MaxConnections = 64\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3872 "4.4. getDatabaseProductVersion()\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3873 "DatabaseProductVersion = 11.35.+\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3874 "4.5. getDatabaseMajorVersion()\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3875 "DatabaseMajorVersion = 11\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3876 "4.6. getDatabaseMinorVersion()\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3877 "DatabaseMinorVersion = 35+\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3878 "4.7. getTables(null, 'tmp', null, null)\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3879 "List Tables in schema tmp:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3880 "_columns\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3881 "_tables\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3882 "idxs\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3883 "keys\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3884 "objects\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3885 "triggers\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3886 "completed listing Tables in schema tmp\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3887 "4.8. getTableTypes()\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3888 "List TableTypes:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3889 "GLOBAL TEMPORARY TABLE\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3890 "LOCAL TEMPORARY TABLE\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3891 "MERGE TABLE\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3892 "REMOTE TABLE\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3893 "REPLICA TABLE\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3894 "SYSTEM TABLE\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3895 "SYSTEM VIEW\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3896 "TABLE\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3897 "VIEW\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3898 "completed listing TableTypes\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3899 "voc meta data Test completed successfully\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3900 "Cleanup created objects\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3901 "5. ALTER USER voc\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3902 "6. DROP SCHEMA voc\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3903 "7. DROP USER voc\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3904 "cleanup succeeded :)\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3905 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3906
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3907 private void BugDatabaseMetaData_Bug_3356() {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3908 sb.setLength(0); // clear the output log buffer
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3909
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3910 ResultSet rs = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3911 try {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3912 DatabaseMetaData dbmd = con.getMetaData();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3913 rs = dbmd.getColumns("", "sys", "_tables", "id");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3914 rs.next();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3915 String tableName1 = rs.getString("TABLE_NAME");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3916 String tableName2 = rs.getString(3);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3917 String isNullable1 = rs.getString("IS_NULLABLE");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3918 String isNullable2 = rs.getString(18);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3919 sb.append(tableName1).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3920 sb.append(tableName2).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3921 sb.append(isNullable1).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3922 sb.append(isNullable2).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3923 } catch (SQLException e) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3924 sb.append("FAILED: ").append(e.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3925 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3926
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3927 closeStmtResSet(null, rs);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3928
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3929 compareExpectedOutput("BugDatabaseMetaData_Bug_3356",
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3930 "_tables\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3931 "_tables\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3932 "YES\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3933 "YES\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3934 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3935
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3936 private void BugDecimalRound_Bug_3561() {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3937 sb.setLength(0); // clear the output log buffer
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3938
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3939 Statement stmt1 = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3940 PreparedStatement pst = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3941 Statement stmt2 = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3942 ResultSet rs = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3943 try {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3944 stmt1 = con.createStatement();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3945 stmt1.executeUpdate("CREATE TABLE bug3561 (d decimal(14,4))");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3946
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3947 pst = con.prepareStatement("INSERT INTO bug3561 VALUES (?)");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3948 pst.setBigDecimal(1, new BigDecimal("112.125"));
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3949 pst.executeUpdate();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3950 pst.setBigDecimal(1, new BigDecimal("212.12345"));
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3951 pst.executeUpdate();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3952 pst.setBigDecimal(1, new BigDecimal("0.012345"));
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3953 pst.executeUpdate();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3954 pst.close();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3955
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3956 stmt2 = con.createStatement();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3957 rs = stmt2.executeQuery("SELECT d FROM bug3561");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3958 while (rs.next())
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3959 sb.append(rs.getString(1)).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3960 } catch (SQLException e) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3961 sb.append("FAILED: ").append(e.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3962 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3963 closeStmtResSet(stmt2, rs);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3964 closeStmtResSet(pst, null);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3965
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3966 // cleanup
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3967 try {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3968 stmt1.executeUpdate("DROP TABLE bug3561");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3969 } catch (SQLException e) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3970 sb.append("FAILED: ").append(e.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3971 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3972 closeStmtResSet(stmt1, null);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3973
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3974 compareExpectedOutput("BugDecimalRound_Bug_3561",
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3975 "112.1250\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3976 "212.1235\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3977 "0.0123\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3978 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3979
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3980 private void BugExecuteUpdate_Bug_3350() {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3981 sb.setLength(0); // clear the output log buffer
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3982
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3983 Statement stmt = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3984 try {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3985 con.setAutoCommit(false); // disable auto commit, so we can roll back the transaction
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3986 stmt = con.createStatement();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3987 stmt.execute("CREATE TABLE t3350 (keyword VARCHAR(30) PRIMARY KEY)");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3988 con.commit();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3989
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3990 executeDML(stmt, "INSERT INTO t3350 VALUES ('Bug_3350')"); // should insert 1 row
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3991 executeDML(stmt, "INSERT INTO t3350 VALUES ('Bug_3350')"); // this will result in an SQLException due to PK uniqueness violation
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3992 con.rollback();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3993
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3994 executeDML(stmt, "INSERT INTO t3350 VALUES ('Bug_3350')"); // should insert 1 row
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3995 executeDML(stmt, "INSERT INTO t3350 VALUES ('1'), ('x'), ('3'), ('y')"); // should insert 4 rows
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3996 executeDML(stmt, "DELETE FROM t3350 WHERE \"keyword\" = 'Bug_3350'"); // should delete 1 row
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3997 executeDML(stmt, "DELETE FROM t3350 WHERE \"keyword\" = 'Bug_3350'"); // should delete 0 rows
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3998 executeDML(stmt, "UPDATE t3350 set \"keyword\" = keyword||'_ext'"); // should update 4 rows
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
3999 executeDML(stmt, "DELETE FROM t3350"); // should delete 4 rows
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4000 con.commit();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4001 } catch (SQLException se) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4002 sb.append(se.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4003 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4004 closeStmtResSet(stmt, null);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4005
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4006 // cleanup
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4007 try {
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4008 stmt.execute("DROP TABLE IF EXISTS t3350");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4009 con.commit();
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4010 con.setAutoCommit(true); // enable auto commit
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4011 } catch (SQLException e) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4012 sb.append("FAILED: ").append(e.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4013 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4014
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4015 compareExpectedOutput("BugExecuteUpdate_Bug_3350",
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4016 "executeUpdate(INSERT ...) returned: 1\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4017 "getUpdateCount() returned: 1\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4018 "INSERT INTO: PRIMARY KEY constraint 't3350.t3350_keyword_pkey' violated\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4019 "getUpdateCount() returned: 1\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4020 "executeUpdate(INSERT ...) returned: 1\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4021 "getUpdateCount() returned: 1\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4022 "executeUpdate(INSERT ...) returned: 4\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4023 "getUpdateCount() returned: 4\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4024 "executeUpdate(DELETE ...) returned: 1\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4025 "getUpdateCount() returned: 1\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4026 "executeUpdate(DELETE ...) returned: 0\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4027 "getUpdateCount() returned: 0\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4028 "executeUpdate(UPDATE ...) returned: 4\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4029 "getUpdateCount() returned: 4\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4030 "executeUpdate(DELETE ...) returned: 4\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4031 "getUpdateCount() returned: 4\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4032 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4033
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4034 private void executeDML(Statement st, String sql) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4035 try {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4036 int upd_count = st.executeUpdate(sql);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4037 sb.append("executeUpdate(").append(sql.substring(0, 6)).append(" ...) returned: ").append(upd_count).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4038 } catch (SQLException se) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4039 sb.append(se.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4040 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4041
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4042 try {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4043 sb.append("getUpdateCount() returned: ").append(st.getUpdateCount()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4044 } catch (SQLException se) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4045 sb.append(se.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4046 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4047 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4048
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4049 private void Bug_IsValid_Timeout_Bug_6782(String arg0) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4050 sb.setLength(0); // clear the output log buffer
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4051
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4052 Connection con2 = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4053 Statement st = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4054 try {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4055 con2 = DriverManager.getConnection(arg0);
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4056 sb.append("connected :)\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4057
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4058 st = con2.createStatement();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4059 st.setQueryTimeout(5);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4060 sb.append("getQueryTimeout must give 5: ").append(st.getQueryTimeout()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4061 st.close();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4062
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4063 con.isValid(6);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4064
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4065 st = con.createStatement();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4066 sb.append("getQueryTimeout must give 0: ").append(st.getQueryTimeout()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4067
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4068 con.isValid(4);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4069 sb.append("getQueryTimeout must give 0: ").append(st.getQueryTimeout()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4070 st.close();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4071
488
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
4072 st.setQueryTimeout(7);
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4073 con.isValid(3);
488
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
4074 sb.append("getQueryTimeout must give 7: ").append(st.getQueryTimeout()).append("\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4075 st.close();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4076 } catch (SQLException se) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4077 sb.append(se.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4078 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4079 closeStmtResSet(st, null);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4080 closeConx(con2);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4081
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4082 compareExpectedOutput("Bug_IsValid_Timeout_Bug_6782",
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4083 "connected :)\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4084 "getQueryTimeout must give 5: 5\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4085 "getQueryTimeout must give 0: 0\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4086 "getQueryTimeout must give 0: 0\n" +
488
59309e3e6daa Speed up Test_Sbatching() by including: SET sys.optimizer = 'minimal_pipe'
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 481
diff changeset
4087 "getQueryTimeout must give 7: 7\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4088 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4089
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4090 private void Bug_LargeQueries_6571_6693(String arg0) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4091 sb.setLength(0); // clear the output log buffer
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4092
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4093 // construct a largedata string value. It must larger than the block size of MapiSocket
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4094 final int num = 9216;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4095 final String repeatValue = "$-)";
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4096 final StringBuilder ldsb = new StringBuilder(num * repeatValue.length());
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4097 for (int i = 0; i < num; i++)
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4098 ldsb.append(repeatValue);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4099 final String largedata = ldsb.toString();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4100 if (largedata.length() <= 8192)
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4101 sb.append("Length (").append(largedata.length()).append(") of largedata value is too small! Should be larger than 8192!");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4102
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4103 final String tbl_nm = "tbl6693";
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4104 Statement stmt = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4105 try {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4106 stmt = con.createStatement();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4107 // create a test table.
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4108 stmt.executeUpdate("CREATE TABLE IF NOT EXISTS " + tbl_nm + " (attribute CLOB, value CLOB);");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4109 sb.append("Created table: ").append(tbl_nm).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4110 sb.append("Inserting rows. ");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4111 String insertCmd = "INSERT INTO " + tbl_nm + " VALUES ('activeset_default_fiets', '" + largedata + "');";
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4112 int ins = stmt.executeUpdate(insertCmd);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4113 ins += stmt.executeUpdate(insertCmd);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4114 ins += stmt.executeUpdate(insertCmd);
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4115 sb.append(ins).append(" rows inserted\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4116 } catch (SQLException se) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4117 sb.append(se.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4118 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4119 closeStmtResSet(stmt, null);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4120
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4121 final int script_iterations = 10;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4122 try {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4123 run_tests(arg0, tbl_nm, script_iterations, largedata);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4124 } catch (SQLException se) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4125 sb.append(se.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4126 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4127
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4128 try (Statement stmt2 = con.createStatement()) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4129 stmt2.executeUpdate("DROP TABLE IF EXISTS " + tbl_nm);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4130 sb.append("Cleaned up TABLE ").append(tbl_nm).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4131 } catch (SQLException se) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4132 sb.append(se.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4133 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4134
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4135 sb.append("Test completed without hanging\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4136
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4137 compareExpectedOutput("Bug_LargeQueries_6571_6693",
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4138 "Created table: tbl6693\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4139 "Inserting rows. 3 rows inserted\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4140 "Script size is 83256\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4141 "First test repeat 10 times. Iteration: 1 2 3 4 5 6 7 8 9 10 \n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4142 "Completed first test\n" +
469
53911f29093c Change output to stderr when differences are found.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 464
diff changeset
4143 "Second test repeat 10 times. Iteration: 1 2 3 4 5 6 7 8 9 10 \n" +
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4144 "Completed second test\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4145 "Script size is 3012\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4146 "Third test repeat 9 times.\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4147 "Iteration: 1 2 3 4 5 6 7 8 9 \n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4148 "Completed third test\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4149 "Cleaned up TABLE tbl6693\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4150 "Test completed without hanging\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4151 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4152
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4153 private void run_tests(String conURL, String tbl_nm, int iterations, String largedata) throws SQLException {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4154 String script =
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4155 "delete from " + tbl_nm + " where attribute='activeset_default_fiets';\n"
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4156 + "insert into " + tbl_nm + " values ('activeset_default_fiets', '" + largedata + "');\n"
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4157 + "insert into " + tbl_nm + " values ('activeset_default_fiets', '" + largedata + "');\n"
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4158 + "insert into " + tbl_nm + " values ('activeset_default_fiets', '" + largedata + "');\n"
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4159 + "select value from " + tbl_nm + " where attribute='activeset_default_fiets';\n";
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4160 sb.append("Script size is " + script.length()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4161
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4162 // first try to make the execution hang after many iterations of sending large data queries within one connection
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4163 sb.append("First test repeat " + iterations + " times. ");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4164 try (Connection con = DriverManager.getConnection(conURL)) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4165 sb.append("Iteration: ");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4166 for (int i = 1; i <= iterations; i++) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4167 sb.append(i).append(" ");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4168 try (Statement stmt = con.createStatement()) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4169 process_script(stmt, script, 1, 3, 6);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4170 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4171 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4172 sb.append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4173 }
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4174 sb.append("Completed first test\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4175
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4176 // also try to make the execution hang after many iterations of making connections (each their own socket) and sending large scripts
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4177 sb.append("Second test repeat " + iterations + " times. ");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4178 sb.append("Iteration: ");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4179 for (int i = 1; i <= iterations; i++) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4180 try (Connection con = DriverManager.getConnection(conURL)) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4181 sb.append(i).append(" ");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4182 try (Statement stmt = con.createStatement()) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4183 process_script(stmt, script, 1, 3, 6);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4184 process_script(stmt, script, 1, 3, 6);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4185 process_script(stmt, script, 1, 3, 6);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4186 process_script(stmt, script, 1, 3, 6);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4187 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4188 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4189 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4190 sb.append("\n");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4191 sb.append("Completed second test\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4192
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4193 // next try to make the execution hang by sending very many queries combined in 1 large script
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4194 final int queries = 260;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4195 StringBuilder qry = new StringBuilder(queries * 13);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4196 for (int i = 1; i <= queries; i++)
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4197 qry.append(" SELECT ").append(i).append(';');
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4198 script = qry.toString();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4199 sb.append("Script size is " + script.length()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4200 iterations = 9;
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4201 sb.append("Third test repeat " + iterations + " times.\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4202 try (Connection con = DriverManager.getConnection(conURL)) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4203 sb.append("Iteration: ");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4204 for (int i = 1; i <= iterations; i++) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4205 sb.append(i).append(" ");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4206 try (Statement stmt = con.createStatement()) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4207 process_script(stmt, script, queries, queries, 0);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4208 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4209 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4210 sb.append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4211 }
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4212 sb.append("Completed third test\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4213 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4214
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4215 private void process_script(Statement stmt, String script,
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4216 int expectedResults, int expectedTotalRows, int expectedUpdates) throws SQLException {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4217 int results = 0;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4218 int rows = 0;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4219 int updates = 0;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4220 stmt.execute(script);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4221 do {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4222 ResultSet rs = stmt.getResultSet();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4223 if (rs != null) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4224 results++;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4225 while(rs.next()) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4226 String val = rs.getString(1);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4227 rows++;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4228 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4229 rs.close();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4230 } else {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4231 int uc = stmt.getUpdateCount();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4232 if (uc > 0)
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4233 updates += uc;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4234 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4235 } while (stmt.getMoreResults() || stmt.getUpdateCount() != -1);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4236
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4237 /* verify nr of processed resultsets and retrieved rows are as expected */
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4238 if (results != expectedResults)
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4239 sb.append(results + "!=" + expectedResults + " ");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4240 if (rows != expectedTotalRows)
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4241 sb.append(rows + "!=" + expectedTotalRows + " ");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4242 if (updates != expectedUpdates)
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4243 sb.append(updates + "!=" + expectedUpdates + " ");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4244 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4245
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4246 private void Bug_PrepStmtSetObject_CLOB_6349() {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4247 sb.setLength(0); // clear the output log buffer
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4248
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4249 Statement stmt = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4250 PreparedStatement pstmt = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4251 ResultSet rs = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4252 try {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4253 sb.append("0. true\t").append(con.getAutoCommit()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4254 stmt = con.createStatement();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4255 stmt.executeUpdate("CREATE TABLE PrepStmtSetObject_CLOB (myint INT, myvarchar VARCHAR(15), myclob CLOB)");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4256 stmt.executeUpdate("INSERT INTO PrepStmtSetObject_CLOB VALUES (123, 'A string', 'A longer string')");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4257 stmt.executeUpdate("INSERT INTO PrepStmtSetObject_CLOB VALUES (NULL, NULL, NULL)"); // all NULLs
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4258
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4259 pstmt = con.prepareStatement("SELECT myclob, myvarchar, myint FROM PrepStmtSetObject_CLOB WHERE myclob = ?");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4260 ParameterMetaData pmd = pstmt.getParameterMetaData();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4261 sb.append("Prepared Query has ").append(pmd.getParameterCount()).append(" parameters. Type of first is: ").append(pmd.getParameterTypeName(1)).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4262 ResultSetMetaData rsmd = pstmt.getMetaData();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4263 sb.append("Prepared Query has ").append(rsmd.getColumnCount()).append(" columns. Type of first is: ").append(rsmd.getColumnTypeName(1)).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4264
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4265 pstmt.setObject(1, "A longer string");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4266 rs = pstmt.executeQuery();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4267 rsmd = rs.getMetaData();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4268 sb.append("Query ResultSet has ").append(rsmd.getColumnCount()).append(" columns. Type of first is: ").append(rsmd.getColumnTypeName(1)).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4269
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4270 boolean has_row = rs.next();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4271 boolean has_rows = rs.next();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4272 if (has_row == false || has_rows == true)
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4273 sb.append("Fetching Query ResultSet failed\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4274 } catch (SQLException se) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4275 sb.append(se.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4276 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4277
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4278 // cleanup
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4279 try {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4280 stmt.executeUpdate("DROP TABLE PrepStmtSetObject_CLOB");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4281 sb.append("Table dropped\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4282 } catch (SQLException se) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4283 sb.append(se.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4284 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4285 closeStmtResSet(stmt, null);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4286 closeStmtResSet(pstmt, rs);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4287
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4288 compareExpectedOutput("Bug_PrepStmtSetObject_CLOB_6349",
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4289 "0. true true\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4290 "Prepared Query has 1 parameters. Type of first is: clob\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4291 "Prepared Query has 3 columns. Type of first is: clob\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4292 "Query ResultSet has 3 columns. Type of first is: clob\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4293 "Table dropped\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4294 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4295
436
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4296 private void Bug_PrepStmtSetString_6382() {
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4297 sb.setLength(0); // clear the output log buffer
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4298
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4299 Statement stmt = null;
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4300 PreparedStatement pstmt = null;
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4301 ResultSet rs = null;
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4302 final String tableName = "PrepStmtSetString_6382";
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4303 try {
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4304 // >> true: auto commit should be on by default
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4305 sb.append("0. true\t").append(con.getAutoCommit()).append("\n");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4306
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4307 stmt = con.createStatement();
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4308 sb.append("1. Creating table ").append(tableName);
436
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4309 if (stmt.executeUpdate("CREATE TABLE " + tableName + " (myint INT, myvarchar VARCHAR(15), myjson JSON, myuuid UUID, myurl URL, myinet INET)") != Statement.SUCCESS_NO_INFO)
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4310 sb.append("Wrong return status\n");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4311
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4312 sb.append("\n2. Insert row 1, ");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4313 stmt.executeUpdate("INSERT INTO " + tableName + " VALUES (1, 'row 1', '{}', uuid '34c8deb5-e608-406b-beda-6a951f73d455', 'https://www.monetdb.org/', '128.0.0.1')");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4314 sb.append("2, ");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4315 stmt.executeUpdate("INSERT INTO " + tableName + " VALUES (2, 'row 2', '[]', NULL, NULL, NULL)");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4316 sb.append("3, ");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4317 stmt.executeUpdate("INSERT INTO " + tableName + " VALUES (3, 'row 3', '\"abc\"', NULL, NULL, NULL)");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4318 sb.append("4, ");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4319 stmt.executeUpdate("INSERT INTO " + tableName + " VALUES (4, 'row 4', 'true', NULL, NULL, NULL)");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4320 sb.append("5\n");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4321 stmt.executeUpdate("INSERT INTO " + tableName + " VALUES (5, 'row 5', '-0.123', NULL, NULL, NULL)");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4322
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4323 sb.append("Creating a prepared statement with 6 parameters and inserting rows using setInt(), setString(), setNull(), setNString(), setURL(), setObject().\n");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4324 pstmt = con.prepareStatement("INSERT INTO " + tableName + " VALUES (?,?, ? ,?,? , ?)");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4325 ParameterMetaData pmd = pstmt.getParameterMetaData();
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4326 int pcount = pmd.getParameterCount();
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4327 sb.append("Prepared Statement has ").append(pcount).append(" parameters:").append((pcount != 6 ? " ERROR: Expected 6 parameters!" : "")).append("\n");
436
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4328 for (int p = 1; p <= pcount; p++) {
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4329 sb.append(" Parameter ").append(p).append(" type is: ").append(pmd.getParameterTypeName(p)).append(". JDBC SQL type: ").append(pmd.getParameterType(p)).append("\n");
436
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4330 }
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4331
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4332 int row = 6;
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4333 pstmt.setInt(1, row);
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4334 pstmt.setString(2, "row " + row);
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4335 pstmt.setString(3, "{\"menu\": {\n \"id\": \"file\",\n \"value\": \"File\",\n \"popup\": {\n \"menuitem\": [\n {\"value\": \"New\", \"onclick\": \"CreateNewDoc()\"},\n {\"value\": \"Open\", \"onclick\": \"OpenDoc()\"},\n {\"value\": \"Close\", \"onclick\": \"CloseDoc()\"}\n ]\n }\n}}");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4336 pstmt.setNull(4, 0);
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4337 pstmt.setNull(5, 0);
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4338 pstmt.setNull(6, 0);
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4339 sb.append("Inserting row ").append(row).append("\n");
436
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4340 int inserted = pstmt.executeUpdate();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4341 sb.append("Inserted ").append(inserted).append(" row\n");
436
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4342
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4343 row++; // row 7
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4344 pstmt.setShort(1, (short)row);
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4345 pstmt.setNString(2, "row " + row);
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4346 pstmt.setNull(3, 0);
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4347 pstmt.setString(4, "4a148b7d-8d47-4e1e-a21e-09a71abf2215");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4348 sb.append("Inserting row ").append(row).append("\n");
436
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4349 inserted = pstmt.executeUpdate();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4350 sb.append("Inserted ").append(inserted).append(" row\n");
436
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4351
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4352 row++; // row 8
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4353 pstmt.setLong(1, (long)row);
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4354 pstmt.setString(2, "row " + row);
494
56f24eb8ca43 Use valid json
Pedro Ferreira <pedro.ferreira@monetdbsolutions.com>
parents: 488
diff changeset
4355 pstmt.setObject(3, "[3.1415E-06]");
436
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4356 pstmt.setNull(4, 0);
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4357 try {
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4358 pstmt.setURL(5, new java.net.URL("https://www.cwi.nl/"));
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4359 } catch (java.net.MalformedURLException mfe) {
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4360 sb.append(mfe).append("\n");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4361 }
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4362 sb.append("Inserting row ").append(row).append("\n");
436
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4363 inserted = pstmt.executeUpdate();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4364 sb.append("Inserted ").append(inserted).append(" row\n");
436
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4365
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4366 row++; // row 9
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4367 pstmt.setBigDecimal(1, new java.math.BigDecimal(row));
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4368 pstmt.setNString(2, "row " + row);
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4369 pstmt.setNull(5, 0);
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4370 pstmt.setString(6, "127.255.255.255");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4371 sb.append("Inserting row ").append(row).append("\n");
436
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4372 inserted = pstmt.executeUpdate();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4373 sb.append("Inserted ").append(inserted).append(" row\n");
436
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4374
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4375 /* also test generic setObject(int, String) */
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4376 row++; // row 10
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4377 pstmt.setObject(1, Integer.valueOf(row));
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4378 pstmt.setObject(2, "row " + row);
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4379 pstmt.setObject(3, "[{\"menu\": {\n \"header\": \"SVG Viewer\",\n \"items\": [\n {\"id\": \"Open\"},\n {\"id\": \"OpenNew\", \"label\": \"Open New\"},\n null,\n {\"id\": \"ZoomIn\", \"label\": \"Zoom In\"},\n {\"id\": \"ZoomOut\", \"label\": \"Zoom Out\"},\n {\"id\": \"OriginalView\", \"label\": \"Original View\"},\n null,\n {\"id\": \"Quality\"},\n {\"id\": \"Pause\"},\n {\"id\": \"Mute\"},\n null,\n {\"id\": \"Help\"},\n {\"id\": \"About\", \"label\": \"About Adobe CVG Viewer...\"}\n ]\n}}]");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4380 pstmt.setObject(4, "b39dc76e-4faf-4fd9-bc1e-17df48acf764");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4381 pstmt.setObject(5, "https://en.wikipedia.org/wiki/IP_address");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4382 pstmt.setObject(6, "223.255.255.255");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4383 sb.append("Inserting row ").append(row).append("\n");
436
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4384 inserted = pstmt.executeUpdate();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4385 sb.append("Inserted ").append(inserted).append(" row\n");
436
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4386
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4387 row++; // row 11
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4388 pstmt.setObject(1, new java.math.BigDecimal(row));
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4389 pstmt.setObject(2, "row " + row);
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4390 pstmt.setObject(3, "null");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4391 pstmt.setObject(4, java.util.UUID.fromString("ff125769-b63c-4c3c-859f-5b84a9349e24"));
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4392 URL myURL = new URL();
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4393 try {
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4394 myURL.fromString("https://en.wikipedia.org/wiki/IP_address");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4395 pstmt.setObject(5, myURL);
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4396 } catch (Exception mfe) {
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4397 sb.append(mfe).append("\n");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4398 }
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4399 INET myINET = new INET();
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4400 myINET.fromString("223.234.245.255");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4401 pstmt.setObject(6, myINET);
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4402 sb.append("Inserting row ").append(row).append("\n");
436
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4403 inserted = pstmt.executeUpdate();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4404 sb.append("Inserted ").append(inserted).append(" row\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4405
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4406 sb.append("List contents of TABLE ").append(tableName).append(" after ").append(row).append(" rows inserted\n");
436
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4407 rs = stmt.executeQuery("SELECT * FROM " + tableName + " ORDER BY 1");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4408 ResultSetMetaData rsmd = rs.getMetaData();
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4409 int colcount = rsmd.getColumnCount();
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4410 sb.append("Query has ").append(colcount).append(" output columns.").append((colcount != 6 ? " ERROR: Expected 6 columns!" : "")).append("\n");
436
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4411 row = 0;
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4412 while (rs.next()) {
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4413 sb.append("row ").append(++row);
436
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4414 for (int c = 1; c <= colcount; c++) {
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4415 sb.append("\t").append(rs.getString(c));
436
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4416 }
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4417 sb.append("\n");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4418 }
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4419 } catch (SQLException e) {
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4420 sb.append("FAILED: ").append(e.getMessage()).append("\n");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4421 }
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4422
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4423 try {
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4424 sb.append("Cleanup TABLE ").append(tableName).append("\n");
436
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4425 stmt.executeUpdate("DROP TABLE " + tableName);
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4426 } catch (SQLException e) {
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4427 sb.append("FAILED: ").append(e.getMessage()).append("\n");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4428 }
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4429
437
1333c19b0c1b include missing )
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 436
diff changeset
4430 closeStmtResSet(stmt, rs);
436
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4431 closeStmtResSet(pstmt, null);
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4432
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4433 compareExpectedOutput("Bug_PrepStmtSetString_6382",
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4434 "0. true true\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4435 "1. Creating table PrepStmtSetString_6382\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4436 "2. Insert row 1, 2, 3, 4, 5\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4437 "Creating a prepared statement with 6 parameters and inserting rows using setInt(), setString(), setNull(), setNString(), setURL(), setObject().\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4438 "Prepared Statement has 6 parameters:\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4439 " Parameter 1 type is: int. JDBC SQL type: 4\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4440 " Parameter 2 type is: varchar. JDBC SQL type: 12\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4441 " Parameter 3 type is: json. JDBC SQL type: 12\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4442 " Parameter 4 type is: uuid. JDBC SQL type: 12\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4443 " Parameter 5 type is: url. JDBC SQL type: 12\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4444 " Parameter 6 type is: inet. JDBC SQL type: 12\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4445 "Inserting row 6\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4446 "Inserted 1 row\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4447 "Inserting row 7\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4448 "Inserted 1 row\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4449 "Inserting row 8\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4450 "Inserted 1 row\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4451 "Inserting row 9\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4452 "Inserted 1 row\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4453 "Inserting row 10\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4454 "Inserted 1 row\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4455 "Inserting row 11\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4456 "Inserted 1 row\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4457 "List contents of TABLE PrepStmtSetString_6382 after 11 rows inserted\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4458 "Query has 6 output columns.\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4459 "row 1 1 row 1 {} 34c8deb5-e608-406b-beda-6a951f73d455 https://www.monetdb.org/ 128.0.0.1\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4460 "row 2 2 row 2 [] null null null\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4461 "row 3 3 row 3 \"abc\" null null null\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4462 "row 4 4 row 4 true null null null\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4463 "row 5 5 row 5 -0.123 null null null\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4464 "row 6 6 row 6 {\"menu\": {\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4465 " \"id\": \"file\",\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4466 " \"value\": \"File\",\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4467 " \"popup\": {\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4468 " \"menuitem\": [\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4469 " {\"value\": \"New\", \"onclick\": \"CreateNewDoc()\"},\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4470 " {\"value\": \"Open\", \"onclick\": \"OpenDoc()\"},\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4471 " {\"value\": \"Close\", \"onclick\": \"CloseDoc()\"}\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4472 " ]\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4473 " }\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4474 "}} null null null\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4475 "row 7 7 row 7 null 4a148b7d-8d47-4e1e-a21e-09a71abf2215 null null\n" +
494
56f24eb8ca43 Use valid json
Pedro Ferreira <pedro.ferreira@monetdbsolutions.com>
parents: 488
diff changeset
4476 "row 8 8 row 8 [3.1415E-06] null https://www.cwi.nl/ null\n" +
56f24eb8ca43 Use valid json
Pedro Ferreira <pedro.ferreira@monetdbsolutions.com>
parents: 488
diff changeset
4477 "row 9 9 row 9 [3.1415E-06] null null 127.255.255.255\n" +
436
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4478 "row 10 10 row 10 [{\"menu\": {\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4479 " \"header\": \"SVG Viewer\",\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4480 " \"items\": [\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4481 " {\"id\": \"Open\"},\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4482 " {\"id\": \"OpenNew\", \"label\": \"Open New\"},\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4483 " null,\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4484 " {\"id\": \"ZoomIn\", \"label\": \"Zoom In\"},\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4485 " {\"id\": \"ZoomOut\", \"label\": \"Zoom Out\"},\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4486 " {\"id\": \"OriginalView\", \"label\": \"Original View\"},\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4487 " null,\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4488 " {\"id\": \"Quality\"},\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4489 " {\"id\": \"Pause\"},\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4490 " {\"id\": \"Mute\"},\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4491 " null,\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4492 " {\"id\": \"Help\"},\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4493 " {\"id\": \"About\", \"label\": \"About Adobe CVG Viewer...\"}\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4494 " ]\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4495 "}}] b39dc76e-4faf-4fd9-bc1e-17df48acf764 https://en.wikipedia.org/wiki/IP_address 223.255.255.255\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4496 "row 11 11 row 11 null ff125769-b63c-4c3c-859f-5b84a9349e24 https://en.wikipedia.org/wiki/IP_address 223.234.245.255\n" +
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4497 "Cleanup TABLE PrepStmtSetString_6382\n");
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4498 }
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
4499
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4500 private void Bug_PrepStmt_With_Errors_Jira292() {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4501 sb.setLength(0); // clear the output log buffer
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4502
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4503 Statement stmt = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4504 PreparedStatement pstmt = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4505 ResultSet rs = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4506 try {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4507 sb.append("0. true\t").append(con.getAutoCommit()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4508 con.setNetworkTimeout(null, (10 *1000));
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4509
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4510 stmt = con.createStatement();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4511 stmt.executeUpdate("drop table if exists abacus;");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4512 stmt.executeUpdate("create table abacus ( \"'Zeitachse'\" date,\"'Abo_ID'\" int,\"'description'\" varchar(256),\"'Klassierungs-Typ'\" clob,\"'KlassierungApplikation'\" clob,\"'EP Netto'\" decimal,\"'Nettoumsatz'\" decimal,\"'validfrom'\" date,\"'validuntil'\" date,\"'Abo_aufgeschaltet'\" int,\"'Abo_deaktiviert'\" int,\"'Differenz'\" decimal,\"'User_ID'\" int,\"'UserName'\" varchar(256),\"'client'\" varchar(256),\"'Installations_ID'\" int,\"'InstallationsName'\" varchar(256),\"'Installationsprovider_ID'\" int,\"'InstallationsproviderName'\" varchar(256),\"'INR'\" bigint,\"'NAME'\" varchar(256),\"'PLZ'\" varchar(256),\"'ORT'\" varchar(256),\"'STAAT'\" varchar(256),\"'Reseller_ID'\" int,\"'ResellerName'\" varchar(256),\"'ET_ABO'\" clob,\"'UserName_1'\" varchar(256),\"'Anzahl_Abos'\" decimal,\"'Anzahl_User'\" decimal,\"'Jahr'\" decimal,\"'Monat'\" decimal,\"'Jahr_Monat'\" clob,\"'IFJ'\" clob,\"'RECNUM$'\" int,\"'InlineCalc_Year_Zeitachse'\" int);");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4513 stmt.executeUpdate("insert into abacus values ('2019-10-30',2239,'description','Klassierungs-Typ','Klassierung-Applikation',73.28,68.29,'2018-01-01','2018-12-01',563,63,56.3,852,'UserName','client',134,'InstallationsName',892,'InstallationsproviderName',9348,'NAME','PLZ','ORT','STAAT',934,'ResellerName','ET_ABO','UserName_1',849.2739,1742.718,395.824,39.824,'Jahr_Monat','IFJ',395824,3789);");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4514
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4515 sb.append("1. table created and inserted 1 row\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4516
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4517 String qry = "SELECT \"'ResellerName'\" FROM abacus WHERE ( ( (\"'InstallationsproviderName'\"='Bienz Pius Treuhand- und Revisions AG')) AND ( (\"'validuntil'\"='2018-01-01' AND \"'description'\"='ABEA 2' AND (EXTRACT(YEAR FROM \"'Zeitachse'\")*100 + EXTRACT(MONTH FROM \"'Zeitachse'\"))/100.0='2019.010' AND \"'UserName'\"='AL - Astrid Lincke (Delphys)' AND \"'validfrom'\"='2016-12-01')) AND ( (\"'IFJ'\"='ohne IFJ')) AND ( (\"'InlineCalc_Year_Zeitachse'\"='2019'))) GROUP BY \"'ResellerName'\" LIMIT 1001 OFFSET 0;";
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4518 try {
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4519 sb.append("2. before select query execution\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4520 rs = stmt.executeQuery(qry);
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4521 sb.append("2a. select query executed\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4522 if (rs != null) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4523 if (rs.next()) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4524 sb.append("2b. select query returned: " + rs.getString(1)).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4525 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4526 rs.close();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4527 rs = null;
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4528 sb.append("2c. closed select query resultset\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4529 }
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4530 sb.append("2d. normal end of select query\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4531 } catch (SQLException se) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4532 sb.append("select query Exception: "+ se.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4533 while ((se = se.getNextException()) != null)
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4534 sb.append("next Exception: "+ se.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4535 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4536
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4537 try {
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4538 sb.append("3. before creating a prepared select query\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4539 pstmt = con.prepareStatement(qry);
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4540 sb.append("3a. prepared select query\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4541
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4542 ParameterMetaData pmd = pstmt.getParameterMetaData();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4543 sb.append("3b. Prepared Query has " + pmd.getParameterCount() + " parameters."); // "Type of first is: " + pmd.getParameterTypeName(1)).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4544 ResultSetMetaData rsmd = pstmt.getMetaData();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4545 sb.append("3c. Prepared Query has " + rsmd.getColumnCount() + " columns. Type of first is: " + rsmd.getColumnTypeName(1)).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4546
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4547 sb.append("3d. before executing the prepared select query\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4548 rs = pstmt.executeQuery();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4549 sb.append("3e. prepared select query executed\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4550 if (rs != null) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4551 rsmd = rs.getMetaData();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4552 sb.append("3f. prepared Query ResultSet has " + rsmd.getColumnCount() + " columns. Type of first is: " + rsmd.getColumnTypeName(1)).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4553
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4554 if (rs.next()) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4555 sb.append("3g. prepared select query returned: " + rs.getString(1)).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4556 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4557 rs.close();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4558 rs = null;
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4559 sb.append("3h. closed prepared select query resultset\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4560 }
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4561 sb.append("3i. normal end of prepared select query\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4562 } catch (SQLException se) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4563 sb.append("prepared select query Exception: "+ se.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4564 while ((se = se.getNextException()) != null)
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4565 sb.append("next Exception: "+ se.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4566 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4567 } catch (SQLException e) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4568 sb.append("FAILED: ").append(e.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4569 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4570
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4571 try {
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4572 sb.append("4. drop table\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4573 stmt.executeUpdate("drop table abacus");
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4574 sb.append("5. normal end of test\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4575 } catch (SQLException e) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4576 sb.append("FAILED: ").append(e.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4577 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4578
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4579 closeStmtResSet(pstmt, rs);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4580 closeStmtResSet(stmt, null);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4581
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4582 compareExpectedOutput("Bug_PrepStmt_With_Errors_Jira292",
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4583 "0. true true\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4584 "1. table created and inserted 1 row\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4585 "2. before select query execution\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4586 "2a. select query executed\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4587 "2c. closed select query resultset\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4588 "2d. normal end of select query\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4589 "3. before creating a prepared select query\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4590 "3a. prepared select query\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4591 "3b. Prepared Query has 0 parameters.3c. Prepared Query has 1 columns. Type of first is: varchar\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4592 "3d. before executing the prepared select query\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4593 "3e. prepared select query executed\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4594 "3f. prepared Query ResultSet has 1 columns. Type of first is: varchar\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4595 "3h. closed prepared select query resultset\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4596 "3i. normal end of prepared select query\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4597 "4. drop table\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4598 "5. normal end of test\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4599 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4600
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4601 private void BugResultSetMetaData_Bug_6183() {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4602 sb.setLength(0); // clear the output log buffer
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4603
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4604 final String dqTblName = "\"my dq_table\"";
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4605 final String[] dqColNames = { "\"my space\"", "\"my, comma_space\"", "\"my$dollar\"", "\"my#hash\"", "\"my tab\""
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4606 , "\"my ,tab_comma\"", "\"my, comma_tab\"", "\"my\"\"double_doublequote\"", "\"Abc\"", "\" \"", "\"123\"" };
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4607 Statement stmt = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4608 ResultSet rs = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4609 try {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4610 StringBuilder ctsb = new StringBuilder(30 + (dqColNames.length * (30 + 15)));
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4611 ctsb.append("CREATE TABLE ").append(dqTblName).append(" (");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4612 for (int n = 0; n < dqColNames.length; n++) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4613 ctsb.append(dqColNames[n]);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4614 ctsb.append(" varchar(").append(31 + n).append(')');
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4615 if (n < (dqColNames.length -1))
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4616 ctsb.append(", ");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4617 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4618 ctsb.append(')');
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4619
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4620 stmt = con.createStatement();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4621 sb.append("1. create table ").append(dqTblName).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4622 int ret = stmt.executeUpdate(ctsb.toString());
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4623 if (ret != -2)
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4624 sb.append(" returned: ").append(ret).append(" (expected -2)\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4625
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4626 String tblName = dqTblName.substring(1, dqTblName.length() -1); // trim the leading and trailing double quote characters
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4627 sb.append("2. show column names of this new table (").append(tblName).append(") via sys.columns query\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4628 rs = stmt.executeQuery("SELECT number, name, type from sys.columns where table_id in (select id from sys._tables where name = '" + tblName + "') order by number");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4629 showResultAndClose_6183(rs);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4630
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4631 sb.append("3. insert 1 row of data with values same as column names\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4632 ctsb.setLength(0);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4633 ctsb.append("INSERT INTO ").append(dqTblName).append(" VALUES (");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4634 for (int n = 0; n < dqColNames.length; n++) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4635 ctsb.append('\'');
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4636 ctsb.append(dqColNames[n]);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4637 ctsb.append('\'');
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4638 if (n < (dqColNames.length -1))
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4639 ctsb.append(", ");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4640 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4641 ctsb.append(')');
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4642 ret = stmt.executeUpdate(ctsb.toString());
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4643 if (ret != 1)
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4644 sb.append(" returned: ").append(ret).append(" (expected 1)\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4645
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4646 sb.append("4. insert 1 row of data with values same as column names but without enclosing double quotes\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4647 ctsb.setLength(0);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4648 ctsb.append("INSERT INTO ").append(dqTblName).append(" VALUES (");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4649 for (int n = 0; n < dqColNames.length; n++) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4650 ctsb.append('\'');
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4651 // remove enclosing double quotes
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4652 ctsb.append(dqColNames[n].substring(1, dqColNames[n].length() -1));
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4653 ctsb.append('\'');
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4654 if (n < (dqColNames.length -1))
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4655 ctsb.append(", ");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4656 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4657 ctsb.append(')');
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4658 ret = stmt.executeUpdate(ctsb.toString());
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4659 if (ret != 1)
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4660 sb.append(" returned: ").append(ret).append(" (expected 1)\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4661
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4662 compareExpectedOutput("BugResultSetMetaData_Bug_6183",
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4663 "1. create table \"my dq_table\"\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4664 "2. show column names of this new table (my dq_table) via sys.columns query\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4665 "Resultset with 3 columns\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4666 " Column Name, Column Label:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4667 "1 number number\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4668 "2 name name\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4669 "3 type type\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4670 "Data rows:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4671 "0 my space varchar\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4672 "1 my, comma_space varchar\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4673 "2 my$dollar varchar\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4674 "3 my#hash varchar\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4675 "4 my tab varchar\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4676 "5 my ,tab_comma varchar\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4677 "6 my, comma_tab varchar\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4678 "7 my\"double_doublequote varchar\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4679 "8 Abc varchar\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4680 "9 varchar\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4681 "10 123 varchar\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4682 "Listed 11 rows\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4683 "3. insert 1 row of data with values same as column names\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4684 "4. insert 1 row of data with values same as column names but without enclosing double quotes\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4685 sb.setLength(0); // clear the output log buffer
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4686
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4687 // query each column separately
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4688 int n = 0;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4689 executeQueryAndShowResult_6183(stmt, dqTblName, dqColNames[n], 5 + n);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4690 compareExpectedOutput("BugResultSetMetaData_Bug_6183",
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4691 "5. show content of column(s): \"my space\"\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4692 "Resultset with 1 columns\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4693 " Column Name, Column Label:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4694 "1 my space my space\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4695 "Data rows:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4696 "\"my space\"\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4697 "my space\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4698 "Listed 2 rows\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4699 sb.setLength(0); // clear the output log buffer
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4700 n++;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4701 executeQueryAndShowResult_6183(stmt, dqTblName, dqColNames[n], 5 + n);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4702 compareExpectedOutput("BugResultSetMetaData_Bug_6183",
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4703 "6. show content of column(s): \"my, comma_space\"\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4704 "Resultset with 1 columns\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4705 " Column Name, Column Label:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4706 "1 my, comma_space my, comma_space\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4707 "Data rows:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4708 "\"my, comma_space\"\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4709 "my, comma_space\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4710 "Listed 2 rows\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4711 sb.setLength(0); // clear the output log buffer
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4712 n++;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4713 executeQueryAndShowResult_6183(stmt, dqTblName, dqColNames[n], 5 + n);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4714 compareExpectedOutput("BugResultSetMetaData_Bug_6183",
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4715 "7. show content of column(s): \"my$dollar\"\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4716 "Resultset with 1 columns\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4717 " Column Name, Column Label:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4718 "1 my$dollar my$dollar\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4719 "Data rows:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4720 "\"my$dollar\"\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4721 "my$dollar\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4722 "Listed 2 rows\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4723 sb.setLength(0); // clear the output log buffer
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4724 n++;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4725 executeQueryAndShowResult_6183(stmt, dqTblName, dqColNames[n], 5 + n);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4726 compareExpectedOutput("BugResultSetMetaData_Bug_6183",
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4727 "8. show content of column(s): \"my#hash\"\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4728 "Resultset with 1 columns\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4729 " Column Name, Column Label:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4730 "1 my#hash my#hash\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4731 "Data rows:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4732 "\"my#hash\"\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4733 "my#hash\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4734 "Listed 2 rows\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4735 sb.setLength(0); // clear the output log buffer
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4736 n++;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4737 executeQueryAndShowResult_6183(stmt, dqTblName, dqColNames[n], 5 + n);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4738 compareExpectedOutput("BugResultSetMetaData_Bug_6183",
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4739 "9. show content of column(s): \"my tab\"\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4740 "Resultset with 1 columns\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4741 " Column Name, Column Label:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4742 "1 my tab my tab\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4743 "Data rows:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4744 "\"my tab\"\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4745 "my tab\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4746 "Listed 2 rows\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4747 sb.setLength(0); // clear the output log buffer
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4748 n++;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4749 executeQueryAndShowResult_6183(stmt, dqTblName, dqColNames[n], 5 + n);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4750 compareExpectedOutput("BugResultSetMetaData_Bug_6183",
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4751 "10. show content of column(s): \"my ,tab_comma\"\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4752 "Resultset with 1 columns\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4753 " Column Name, Column Label:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4754 "1 my ,tab_comma my ,tab_comma\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4755 "Data rows:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4756 "\"my ,tab_comma\"\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4757 "my ,tab_comma\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4758 "Listed 2 rows\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4759 sb.setLength(0); // clear the output log buffer
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4760 n++;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4761 executeQueryAndShowResult_6183(stmt, dqTblName, dqColNames[n], 5 + n);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4762 compareExpectedOutput("BugResultSetMetaData_Bug_6183",
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4763 "11. show content of column(s): \"my, comma_tab\"\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4764 "Resultset with 1 columns\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4765 " Column Name, Column Label:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4766 "1 my, comma_tab my, comma_tab\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4767 "Data rows:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4768 "\"my, comma_tab\"\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4769 "my, comma_tab\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4770 "Listed 2 rows\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4771 sb.setLength(0); // clear the output log buffer
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4772 n++;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4773 executeQueryAndShowResult_6183(stmt, dqTblName, dqColNames[n], 5 + n);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4774 compareExpectedOutput("BugResultSetMetaData_Bug_6183",
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4775 "12. show content of column(s): \"my\"\"double_doublequote\"\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4776 "Resultset with 1 columns\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4777 " Column Name, Column Label:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4778 "1 my\\\"double_doublequote my\\\"double_doublequote\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4779 "Data rows:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4780 "\"my\"\"double_doublequote\"\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4781 "my\"\"double_doublequote\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4782 "Listed 2 rows\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4783 sb.setLength(0); // clear the output log buffer
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4784 n++;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4785 executeQueryAndShowResult_6183(stmt, dqTblName, dqColNames[n], 5 + n);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4786 compareExpectedOutput("BugResultSetMetaData_Bug_6183",
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4787 "13. show content of column(s): \"Abc\"\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4788 "Resultset with 1 columns\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4789 " Column Name, Column Label:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4790 "1 Abc Abc\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4791 "Data rows:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4792 "\"Abc\"\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4793 "Abc\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4794 "Listed 2 rows\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4795 sb.setLength(0); // clear the output log buffer
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4796 n++;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4797 executeQueryAndShowResult_6183(stmt, dqTblName, dqColNames[n], 5 + n);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4798 compareExpectedOutput("BugResultSetMetaData_Bug_6183",
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4799 "14. show content of column(s): \" \"\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4800 "Resultset with 1 columns\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4801 " Column Name, Column Label:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4802 "1 \n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4803 "Data rows:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4804 "\" \"\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4805 " \n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4806 "Listed 2 rows\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4807 sb.setLength(0); // clear the output log buffer
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4808 n++;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4809 executeQueryAndShowResult_6183(stmt, dqTblName, dqColNames[n], 5 + n);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4810 compareExpectedOutput("BugResultSetMetaData_Bug_6183",
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4811 "15. show content of column(s): \"123\"\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4812 "Resultset with 1 columns\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4813 " Column Name, Column Label:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4814 "1 123 123\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4815 "Data rows:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4816 "\"123\"\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4817 "123\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4818 "Listed 2 rows\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4819 sb.setLength(0); // clear the output log buffer
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4820
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4821 // query all columns
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4822 executeQueryAndShowResult_6183(stmt, dqTblName, "*", 5 + dqColNames.length);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4823 compareExpectedOutput("BugResultSetMetaData_Bug_6183",
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4824 "16. show content of column(s): *\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4825 "Resultset with 11 columns\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4826 " Column Name, Column Label:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4827 "1 my space my space\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4828 "2 my, comma_space my, comma_space\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4829 "3 my$dollar my$dollar\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4830 "4 my#hash my#hash\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4831 "5 my tab my tab\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4832 "6 my ,tab_comma my ,tab_comma\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4833 "7 my, comma_tab my, comma_tab\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4834 "8 my\\\"double_doublequote my\\\"double_doublequote\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4835 "9 Abc Abc\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4836 "10 \n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4837 "11 123 123\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4838 "Data rows:\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4839 "\"my space\" \"my, comma_space\" \"my$dollar\" \"my#hash\" \"my tab\" \"my ,tab_comma\" \"my, comma_tab\" \"my\"\"double_doublequote\" \"Abc\" \" \" \"123\"\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4840 "my space my, comma_space my$dollar my#hash my tab my ,tab_comma my, comma_tab my\"\"double_doublequote Abc 123\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4841 "Listed 2 rows\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4842 sb.setLength(0); // clear the output log buffer
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4843 } catch (SQLException e) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4844 sb.append("FAILED: ").append(e.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4845 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4846
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4847 // cleanup
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4848 try {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4849 sb.append("Finally drop table ").append(dqTblName).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4850 int ret = stmt.executeUpdate("DROP TABLE " + dqTblName);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4851 if (ret != -2)
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4852 sb.append(" returned: ").append(ret).append(" (expected -2)\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4853 } catch (SQLException e) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4854 sb.append("FAILED: ").append(e.getMessage()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4855 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4856
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4857 closeStmtResSet(stmt, rs);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4858
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4859 compareExpectedOutput("BugResultSetMetaData_Bug_6183",
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4860 "Finally drop table \"my dq_table\"\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4861 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4862
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4863 private void executeQueryAndShowResult_6183(Statement st, String dqTblName, String col_list, int query_count) throws SQLException {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4864 sb.append(query_count).append(". show content of column(s): ").append(col_list).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4865 ResultSet rs = st.executeQuery("SELECT " + col_list + " from " + dqTblName);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4866 showResultAndClose_6183(rs);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4867 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4868
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4869 private void showResultAndClose_6183(ResultSet rs) throws SQLException {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4870 ResultSetMetaData rsmd = rs.getMetaData();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4871 int rs_col_count = rsmd.getColumnCount();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4872 sb.append("Resultset with ").append(rs_col_count).append(" columns\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4873 sb.append("\tColumn Name, Column Label:\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4874 for (int col = 1; col <= rs_col_count; col++) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4875 sb.append(col).append("\t").append(rsmd.getColumnName(col)).append("\t").append(rsmd.getColumnLabel(col)).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4876 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4877
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4878 sb.append("Data rows:\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4879 long row_count = 0;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4880 while (rs.next()) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4881 row_count++;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4882 for (int col = 1; col <= rs_col_count; col++) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4883 if (col > 1)
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4884 sb.append("\t");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4885 sb.append(rs.getString(col));
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4886 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4887 sb.append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4888 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4889 rs.close();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4890 sb.append("Listed ").append(row_count).append(" rows\n");
446
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4891 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4892
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4893 private void BugSetQueryTimeout_Bug_3357() {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4894 sb.setLength(0); // clear the output log buffer
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4895
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4896 int originalQueryTimeout = 1;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4897 Statement st = null;
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4898 try {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4899 st = con.createStatement();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4900 originalQueryTimeout = st.getQueryTimeout();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4901 sb.append("original getQueryTimeout = ").append(originalQueryTimeout).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4902
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4903 testTimeout_3357(st, 123);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4904 testTimeout_3357(st, 123456);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4905 testTimeout_3357(st, 2134567890);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4906 testTimeout_3357(st, 0);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4907 testTimeout_3357(st, 10);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4908 testTimeout_3357(st, -1); // to generate an SQLException as negative timeouts are invalid
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4909 } catch (SQLException se) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4910 sb.append("\n SQLException: setQueryTimeout(timeout_value) throws: ").append(se).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4911 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4912
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4913 // restore originalQueryTimeout
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4914 try {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4915 testTimeout_3357(st, originalQueryTimeout);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4916 } catch (SQLException se) {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4917 sb.append("setQueryTimeout(timeout_value) throws: ").append(se).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4918 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4919 closeStmtResSet(st, null);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4920
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4921 compareExpectedOutput("BugSetQueryTimeout_Bug_3357",
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4922 "original getQueryTimeout = 0\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4923 "setQueryTimeout = 123. getQueryTimeout = 123\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4924 "setQueryTimeout = 123456. getQueryTimeout = 123456\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4925 "setQueryTimeout = 2134567890. getQueryTimeout = 2134567890\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4926 "setQueryTimeout = 0. getQueryTimeout = 0\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4927 "setQueryTimeout = 10. getQueryTimeout = 10\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4928 "setQueryTimeout = -1. \n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4929 " SQLException: setQueryTimeout(timeout_value) throws: java.sql.SQLException: Illegal timeout value: -1\n" +
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4930 "setQueryTimeout = 0. getQueryTimeout = 0\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4931 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4932
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4933 private void testTimeout_3357(Statement st, int secs) throws SQLException {
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4934 sb.append("setQueryTimeout = ").append(secs).append(". ");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4935 st.setQueryTimeout(secs);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4936 // as the call to set the timeout is delayed till a statement is executed, issue a select statment
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4937 ResultSet rs = st.executeQuery("SELECT " + secs);
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4938 if (rs != null)
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4939 rs.close();
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4940 sb.append("getQueryTimeout = ").append(st.getQueryTimeout()).append("\n");
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4941 }
1ae0dc05bce5 Converted 12 more JDBC tests from Bug*.java into "output on exception only" tests and included them into JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 437
diff changeset
4942
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4943 /**
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4944 * This SQLcopyinto program demonstrates how the MonetDB JDBC driver can facilitate
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4945 * in performing COPY INTO ... FROM STDIN sequences.
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4946 * It shows how a data stream via MapiSocket to STDIN can be performed.
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4947 *
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4948 * @author Fabian Groffen, Martin van Dinther
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4949 */
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4950 private void SQLcopyinto() {
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4951 sb.setLength(0); // clear the output log buffer
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4952
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4953 final String tablenm = "exampleSQLCopyInto";
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4954 Statement stmt = null;
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4955 ResultSet rs = null;
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4956 try {
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4957 stmt = con.createStatement();
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4958 stmt.execute("CREATE TABLE IF NOT EXISTS " + tablenm + " (id int, val varchar(24))");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4959
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4960 fillTableUsingCopyIntoSTDIN(tablenm);
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4961
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4962 // check content of the table populated via COPY INTO ... FROM STDIN
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4963 sb.append("Listing uploaded data:\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4964 int row = 0;
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4965 rs = stmt.executeQuery("SELECT * FROM " + tablenm);
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4966 if (rs != null) {
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4967 while (rs.next()) {
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4968 row++;
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4969 if ((row % 1000) == 0)
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4970 sb.append("Row data: ").append(rs.getString(1)).append(", ").append(rs.getString(2)).append("\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4971 }
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4972 rs.close();
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4973 rs = null;
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4974 }
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4975 } catch (SQLException se) {
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4976 sb.append("SQLException: ").append(se.getMessage()).append("\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4977 } catch (Exception e) {
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4978 sb.append("Exception: ").append(e.getMessage()).append("\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4979 }
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4980
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4981 // cleanup
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4982 try {
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4983 stmt.execute("DROP TABLE " + tablenm);
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4984 sb.append("SQLcopyinto completed\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4985 } catch (SQLException se) {
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4986 sb.append("SQLException: ").append(se.getMessage()).append("\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4987 }
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4988 closeStmtResSet(stmt, rs);
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4989
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4990 compareExpectedOutput("SQLcopyinto()",
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4991 "CopyInto STDIN begin\n" +
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4992 "Before connecting to MonetDB server via MapiSocket\n" +
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4993 "Connected to MonetDB server via MapiSocket\n" +
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4994 "Before sending data to STDIN\n" +
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4995 "Completed sending data via STDIN\n" +
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4996 "CopyInto STDIN end\n" +
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4997 "Listing uploaded data:\n" +
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4998 "Row data: 999, val_999\n" +
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
4999 "Row data: 1999, val_1999\n" +
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5000 "Row data: 2999, val_2999\n" +
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5001 "Row data: 3999, val_3999\n" +
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5002 "Row data: 4999, val_4999\n" +
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5003 "Row data: 5999, val_5999\n" +
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5004 "Row data: 6999, val_6999\n" +
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5005 "Row data: 7999, val_7999\n" +
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5006 "Row data: 8999, val_8999\n" +
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5007 "SQLcopyinto completed\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5008 }
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5009
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5010 private void fillTableUsingCopyIntoSTDIN(String tablenm) throws Exception {
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5011 sb.append("CopyInto STDIN begin\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5012
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5013 org.monetdb.mcl.net.MapiSocket server = new org.monetdb.mcl.net.MapiSocket();
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5014 try {
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5015 server.setLanguage("sql");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5016
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5017 // extract from MonetConnection object the used connection properties
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5018 String host = con.getClientInfo("host");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5019 int port = Integer.parseInt(con.getClientInfo("port"));
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5020 String login = con.getClientInfo("user");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5021 String passw = con.getClientInfo("password");
586
ac5e97fc812d Make SQLcopyinto test work onder monetdbd
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents: 494
diff changeset
5022
ac5e97fc812d Make SQLcopyinto test work onder monetdbd
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents: 494
diff changeset
5023 String database = con.getClientInfo("database");
ac5e97fc812d Make SQLcopyinto test work onder monetdbd
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents: 494
diff changeset
5024 server.setDatabase(database);
ac5e97fc812d Make SQLcopyinto test work onder monetdbd
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents: 494
diff changeset
5025
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5026 // sb.append("host: " + host + " port: " + port + " login: " + login + " passwd: " + passw + "\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5027 sb.append("Before connecting to MonetDB server via MapiSocket\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5028 List<String> warning = server.connect(host, port, login, passw);
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5029 if (warning != null) {
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5030 for (Iterator<String> it = warning.iterator(); it.hasNext(); ) {
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5031 sb.append("Warning: ").append(it.next().toString()).append("\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5032 }
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5033 }
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5034 sb.append("Connected to MonetDB server via MapiSocket\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5035
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5036 org.monetdb.mcl.io.BufferedMCLReader mclIn = server.getReader();
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5037 org.monetdb.mcl.io.BufferedMCLWriter mclOut = server.getWriter();
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5038
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5039 String error = mclIn.waitForPrompt();
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5040 if (error != null)
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5041 sb.append("Received start error: ").append(error).append("\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5042
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5043 sb.append("Before sending data to STDIN\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5044
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5045 // the leading 's' is essential, since it is a protocol marker
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5046 // that should not be omitted, likewise the trailing semicolon
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5047 mclOut.write('s');
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5048 mclOut.write("COPY INTO " + tablenm + " FROM STDIN USING DELIMITERS ',',E'\\n';");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5049 mclOut.newLine();
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5050 // now write the row data values as csv data lines to the STDIN stream
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5051 for (int i = 0; i < 9000; i++) {
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5052 mclOut.write("" + i + ",val_" + i);
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5053 mclOut.newLine();
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5054 }
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5055 mclOut.writeLine(""); // need this one for synchronisation over flush()
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5056
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5057 error = mclIn.waitForPrompt();
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5058 if (error != null)
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5059 sb.append("Received error: ").append(error).append("\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5060
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5061 mclOut.writeLine(""); // need this one for synchronisation over flush()
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5062
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5063 error = mclIn.waitForPrompt();
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5064 if (error != null)
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5065 sb.append("Received finish error: ").append(error).append("\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5066
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5067 sb.append("Completed sending data via STDIN\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5068 } catch (Exception e) {
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5069 sb.append("Mapi Exception: ").append(e.getMessage()).append("\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5070 } finally {
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5071 // close MAPI connection to MonetDB server
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5072 server.close();
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5073 }
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5074
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5075 sb.append("CopyInto STDIN end\n");
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5076 }
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5077
436
b32946647c77 Extended PreparedStatement.setString() json string validity test for json parameters to now also accept: numbers (with optional fractions and exponent), string literals between double quotes, and keywords: true, false and null.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 427
diff changeset
5078
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5079 // some private utility methods for showing table content and params meta data
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5080 private void showTblContents(String tblnm) {
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5081 Statement stmt = null;
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5082 ResultSet rs = null;
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5083 try {
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5084 stmt = con.createStatement();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5085 rs = stmt.executeQuery("SELECT * FROM " + tblnm);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5086 if (rs != null) {
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5087 ResultSetMetaData rsmd = rs.getMetaData();
448
d7bac8d0fb93 Converted and added example program SQLcopyinto() to JDBC_API_Tester.java
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 447
diff changeset
5088 sb.append("Table ").append(tblnm).append(" has ").append(rsmd.getColumnCount()).append(" columns:\n");
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5089 for (int col = 1; col <= rsmd.getColumnCount(); col++) {
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5090 sb.append("\t").append(rsmd.getColumnLabel(col));
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5091 }
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5092 sb.append("\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5093 while (rs.next()) {
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5094 for (int col = 1; col <= rsmd.getColumnCount(); col++) {
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5095 sb.append("\t").append(rs.getString(col));
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5096 }
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5097 sb.append("\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5098 }
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5099 } else
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5100 sb.append("failed to execute query: SELECT * FROM ").append(tblnm).append("\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5101 } catch (SQLException e) {
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
5102 sb.append("showContents failed: ").append(e.getMessage()).append("\n");
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5103 }
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5104 closeStmtResSet(stmt, rs);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5105 }
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5106
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5107 private void showParams(PreparedStatement pstmt) {
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5108 try {
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5109 // testing and showing parameter meta data
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5110 ParameterMetaData pmd = pstmt.getParameterMetaData();
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5111 sb.append("pmd. ").append(pmd.getParameterCount()).append(" parameters:\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5112 for (int parm = 1; parm <= pmd.getParameterCount(); parm++) {
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5113 sb.append("Param ").append(parm).append("\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5114 int nullable = pmd.isNullable(parm);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5115 sb.append(" nullable ").append(nullable).append(" (");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5116 switch (nullable) {
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5117 case ParameterMetaData.parameterNoNulls: sb.append("NO"); break;
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5118 case ParameterMetaData.parameterNullable: sb.append("YA"); break;
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5119 case ParameterMetaData.parameterNullableUnknown: sb.append("UNKNOWN"); break;
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
5120 default: sb.append("INVALID ").append(nullable); break;
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5121 }
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5122 sb.append(")\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5123 sb.append(" signed ").append(pmd.isSigned(parm)).append("\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5124 sb.append(" precision ").append(pmd.getPrecision(parm)).append("\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5125 sb.append(" scale ").append(pmd.getScale(parm)).append("\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5126 sb.append(" type ").append(pmd.getParameterType(parm)).append("\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5127 sb.append(" typename ").append(pmd.getParameterTypeName(parm)).append("\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5128 sb.append(" classname ").append(pmd.getParameterClassName(parm)).append("\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5129 int mode = pmd.getParameterMode(parm);
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5130 sb.append(" mode ").append(mode).append(" (");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5131 switch (mode) {
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5132 case ParameterMetaData.parameterModeIn: sb.append("IN"); break;
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5133 case ParameterMetaData.parameterModeInOut: sb.append("INOUT"); break;
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5134 case ParameterMetaData.parameterModeOut: sb.append("OUT"); break;
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5135 case ParameterMetaData.parameterModeUnknown: sb.append("UNKNOWN"); break;
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
5136 default: sb.append("INVALID ").append(mode); break;
401
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5137 }
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5138 sb.append(")\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5139 }
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5140 } catch (SQLException e) {
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5141 sb.append("showParams() FAILED: ").append(e.getMessage()).append("\n");
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5142 }
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5143 }
1850e0dfb5f7 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 400
diff changeset
5144
404
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
5145 private void readExceptions(SQLException e) {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
5146 while (e != null) {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
5147 sb.append("Exception: ").append(e.toString()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
5148 e = e.getNextException();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
5149 }
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
5150 }
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
5151
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
5152 private void readWarnings(SQLWarning w) {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
5153 while (w != null) {
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
5154 sb.append("Warning: ").append(w.toString()).append("\n");
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
5155 w = w.getNextWarning();
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
5156 }
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
5157 }
559aa626b550 Improved code and implemented all tests.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 401
diff changeset
5158
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5159 private void compareExpectedOutput(String testname, String expected) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5160 if (!expected.equals(sb.toString())) {
469
53911f29093c Change output to stderr when differences are found.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 464
diff changeset
5161 foundDifferences = true;
53911f29093c Change output to stderr when differences are found.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 464
diff changeset
5162 System.err.print("Test '");
53911f29093c Change output to stderr when differences are found.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 464
diff changeset
5163 System.err.print(testname);
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
5164 if (!testname.endsWith(")"))
469
53911f29093c Change output to stderr when differences are found.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 464
diff changeset
5165 System.err.print("()");
53911f29093c Change output to stderr when differences are found.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 464
diff changeset
5166 System.err.println("' produced different output!");
53911f29093c Change output to stderr when differences are found.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 464
diff changeset
5167 System.err.println("Expected:");
53911f29093c Change output to stderr when differences are found.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 464
diff changeset
5168 System.err.println(expected);
53911f29093c Change output to stderr when differences are found.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 464
diff changeset
5169 System.err.println("Gotten:");
53911f29093c Change output to stderr when differences are found.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 464
diff changeset
5170 System.err.println(sb);
53911f29093c Change output to stderr when differences are found.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 464
diff changeset
5171 System.err.println();
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5172 }
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
5173 if (sb.length() > sbInitLen) {
469
53911f29093c Change output to stderr when differences are found.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 464
diff changeset
5174 System.err.println("Test '" + testname
400
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
5175 + "' produced output > " + sbInitLen
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
5176 + " chars! Enlarge sbInitLen to: " + sb.length());
20bdae942f99 Implemented some more tests
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 399
diff changeset
5177 }
395
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5178 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5179
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5180 private void closeConx(Connection cn) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5181 if (cn != null) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5182 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5183 cn.close();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5184 } catch (SQLException e) { /* ignore */ }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5185 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5186 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5187
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5188 private void closeStmtResSet(Statement st, ResultSet rs) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5189 if (rs != null) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5190 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5191 rs.close();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5192 } catch (SQLException e) { /* ignore */ }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5193 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5194 if (st != null) {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5195 try {
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5196 st.close();
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5197 } catch (SQLException e) { /* ignore */ }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5198 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5199 }
0eef53e06007 Add JDBC_API_Tester program to test JDBC Driver API methods and behavior of MonetDB server.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
diff changeset
5200 }