Mercurial > hg > monetdb-java
comparison tests/JDBC_API_Tester.java @ 888:549225b7be85
Corrected ResultSetMetaData methods getPrecision(), getColumnDisplaySize() and ParameterMetaData method getPrecision() for the interval data types. They now return more precise information for the 13 possible interval data types.
author | Martin van Dinther <martin.van.dinther@monetdbsolutions.com> |
---|---|
date | Thu, 04 Apr 2024 15:14:53 +0200 (13 months ago) |
parents | 674f9ed21308 |
children | 07a4998898a8 |
comparison
equal
deleted
inserted
replaced
887:674f9ed21308 | 888:549225b7be85 |
---|---|
45 private int dbmsMajorVersion; | 45 private int dbmsMajorVersion; |
46 private int dbmsMinorVersion; | 46 private int dbmsMinorVersion; |
47 private boolean isPostDec2023; // flag to support version specific output | 47 private boolean isPostDec2023; // flag to support version specific output |
48 private boolean foundDifferences = false; | 48 private boolean foundDifferences = false; |
49 | 49 |
50 final private static int sbInitLen = 5442; | 50 final private static int sbInitLen = 5468; |
51 | 51 |
52 /** | 52 /** |
53 * constructor | 53 * constructor |
54 */ | 54 */ |
55 JDBC_API_Tester() { | 55 JDBC_API_Tester() { |
1889 } | 1889 } |
1890 closeStmtResSet(stmt, rs); | 1890 closeStmtResSet(stmt, rs); |
1891 | 1891 |
1892 compareExpectedOutput("Test_Interval_Types", | 1892 compareExpectedOutput("Test_Interval_Types", |
1893 "Showing query ResultSetMetaData\n" + | 1893 "Showing query ResultSetMetaData\n" + |
1894 "ColumnName: c1 ColumnTypeName: interval year Precision: 10 Scale: 0 ColumnDisplaySize: 1 ColumnType: 4 ColumnClassName: java.lang.Integer\n" + | 1894 "ColumnName: c1 ColumnTypeName: interval year Precision: 10 Scale: 0 ColumnDisplaySize: 4 ColumnType: 4 ColumnClassName: java.lang.Integer\n" + |
1895 "ColumnName: c2 ColumnTypeName: interval month Precision: 10 Scale: 0 ColumnDisplaySize: 1 ColumnType: 4 ColumnClassName: java.lang.Integer\n" + | 1895 "ColumnName: c2 ColumnTypeName: interval month Precision: 10 Scale: 0 ColumnDisplaySize: 6 ColumnType: 4 ColumnClassName: java.lang.Integer\n" + |
1896 "ColumnName: c3 ColumnTypeName: interval day Precision: 4 Scale: 0 ColumnDisplaySize: 5 ColumnType: 2 ColumnClassName: java.math.BigDecimal\n" + | 1896 "ColumnName: c3 ColumnTypeName: interval day Precision: 9 Scale: 0 ColumnDisplaySize: 9 ColumnType: 2 ColumnClassName: java.math.BigDecimal\n" + |
1897 "ColumnName: c4 ColumnTypeName: interval hour Precision: 8 Scale: 3 ColumnDisplaySize: 5 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + | 1897 "ColumnName: c4 ColumnTypeName: interval hour Precision: 11 Scale: 3 ColumnDisplaySize: 11 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + |
1898 "ColumnName: c5 ColumnTypeName: interval minute Precision: 11 Scale: 3 ColumnDisplaySize: 5 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + | 1898 "ColumnName: c5 ColumnTypeName: interval minute Precision: 13 Scale: 3 ColumnDisplaySize: 13 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + |
1899 "ColumnName: c6 ColumnTypeName: interval second Precision: 13 Scale: 3 ColumnDisplaySize: 5 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + | 1899 "ColumnName: c6 ColumnTypeName: interval second Precision: 15 Scale: 3 ColumnDisplaySize: 15 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + |
1900 "ColumnName: c7 ColumnTypeName: interval year to month Precision: 10 Scale: 0 ColumnDisplaySize: 1 ColumnType: 4 ColumnClassName: java.lang.Integer\n" + | 1900 "ColumnName: c7 ColumnTypeName: interval year to month Precision: 10 Scale: 0 ColumnDisplaySize: 6 ColumnType: 4 ColumnClassName: java.lang.Integer\n" + |
1901 "ColumnName: c8 ColumnTypeName: interval day to hour Precision: 5 Scale: 3 ColumnDisplaySize: 5 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + | 1901 "ColumnName: c8 ColumnTypeName: interval day to hour Precision: 11 Scale: 3 ColumnDisplaySize: 11 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + |
1902 "ColumnName: c9 ColumnTypeName: interval day to minute Precision: 6 Scale: 3 ColumnDisplaySize: 5 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + | 1902 "ColumnName: c9 ColumnTypeName: interval day to minute Precision: 13 Scale: 3 ColumnDisplaySize: 13 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + |
1903 "ColumnName: c10 ColumnTypeName: interval day to second Precision: 7 Scale: 3 ColumnDisplaySize: 5 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + | 1903 "ColumnName: c10 ColumnTypeName: interval day to second Precision: 15 Scale: 3 ColumnDisplaySize: 15 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + |
1904 "ColumnName: c11 ColumnTypeName: interval hour to minute Precision: 9 Scale: 3 ColumnDisplaySize: 5 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + | 1904 "ColumnName: c11 ColumnTypeName: interval hour to minute Precision: 13 Scale: 3 ColumnDisplaySize: 13 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + |
1905 "ColumnName: c12 ColumnTypeName: interval hour to second Precision: 10 Scale: 3 ColumnDisplaySize: 5 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + | 1905 "ColumnName: c12 ColumnTypeName: interval hour to second Precision: 15 Scale: 3 ColumnDisplaySize: 15 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + |
1906 "ColumnName: c13 ColumnTypeName: interval minute to second Precision: 12 Scale: 3 ColumnDisplaySize: 5 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + | 1906 "ColumnName: c13 ColumnTypeName: interval minute to second Precision: 15 Scale: 3 ColumnDisplaySize: 15 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + |
1907 "Showing prepared query ResultSetMetaData\n" + | 1907 "Showing prepared query ResultSetMetaData\n" + |
1908 "ColumnName: c1 ColumnTypeName: interval year Precision: 10 Scale: 0 ColumnDisplaySize: 10 ColumnType: 4 ColumnClassName: java.lang.Integer\n" + | 1908 "ColumnName: c1 ColumnTypeName: interval year Precision: 10 Scale: 0 ColumnDisplaySize: 4 ColumnType: 4 ColumnClassName: java.lang.Integer\n" + |
1909 "ColumnName: c2 ColumnTypeName: interval month Precision: 10 Scale: 0 ColumnDisplaySize: 10 ColumnType: 4 ColumnClassName: java.lang.Integer\n" + | 1909 "ColumnName: c2 ColumnTypeName: interval month Precision: 10 Scale: 0 ColumnDisplaySize: 6 ColumnType: 4 ColumnClassName: java.lang.Integer\n" + |
1910 "ColumnName: c3 ColumnTypeName: interval day Precision: 4 Scale: 0 ColumnDisplaySize: 4 ColumnType: 2 ColumnClassName: java.math.BigDecimal\n" + | 1910 "ColumnName: c3 ColumnTypeName: interval day Precision: 9 Scale: 0 ColumnDisplaySize: 9 ColumnType: 2 ColumnClassName: java.math.BigDecimal\n" + |
1911 "ColumnName: c4 ColumnTypeName: interval hour Precision: 8 Scale: 3 ColumnDisplaySize: 8 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + | 1911 "ColumnName: c4 ColumnTypeName: interval hour Precision: 11 Scale: 3 ColumnDisplaySize: 11 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + |
1912 "ColumnName: c5 ColumnTypeName: interval minute Precision: 11 Scale: 3 ColumnDisplaySize: 11 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + | 1912 "ColumnName: c5 ColumnTypeName: interval minute Precision: 13 Scale: 3 ColumnDisplaySize: 13 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + |
1913 "ColumnName: c6 ColumnTypeName: interval second Precision: 13 Scale: 3 ColumnDisplaySize: 13 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + | 1913 "ColumnName: c6 ColumnTypeName: interval second Precision: 15 Scale: 3 ColumnDisplaySize: 15 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + |
1914 "ColumnName: c7 ColumnTypeName: interval year to month Precision: 10 Scale: 0 ColumnDisplaySize: 10 ColumnType: 4 ColumnClassName: java.lang.Integer\n" + | 1914 "ColumnName: c7 ColumnTypeName: interval year to month Precision: 10 Scale: 0 ColumnDisplaySize: 6 ColumnType: 4 ColumnClassName: java.lang.Integer\n" + |
1915 "ColumnName: c8 ColumnTypeName: interval day to hour Precision: 5 Scale: 3 ColumnDisplaySize: 5 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + | 1915 "ColumnName: c8 ColumnTypeName: interval day to hour Precision: 11 Scale: 3 ColumnDisplaySize: 11 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + |
1916 "ColumnName: c9 ColumnTypeName: interval day to minute Precision: 6 Scale: 3 ColumnDisplaySize: 6 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + | 1916 "ColumnName: c9 ColumnTypeName: interval day to minute Precision: 13 Scale: 3 ColumnDisplaySize: 13 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + |
1917 "ColumnName: c10 ColumnTypeName: interval day to second Precision: 7 Scale: 3 ColumnDisplaySize: 7 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + | 1917 "ColumnName: c10 ColumnTypeName: interval day to second Precision: 15 Scale: 3 ColumnDisplaySize: 15 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + |
1918 "ColumnName: c11 ColumnTypeName: interval hour to minute Precision: 9 Scale: 3 ColumnDisplaySize: 9 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + | 1918 "ColumnName: c11 ColumnTypeName: interval hour to minute Precision: 13 Scale: 3 ColumnDisplaySize: 13 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + |
1919 "ColumnName: c12 ColumnTypeName: interval hour to second Precision: 10 Scale: 3 ColumnDisplaySize: 10 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + | 1919 "ColumnName: c12 ColumnTypeName: interval hour to second Precision: 15 Scale: 3 ColumnDisplaySize: 15 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + |
1920 "ColumnName: c13 ColumnTypeName: interval minute to second Precision: 12 Scale: 3 ColumnDisplaySize: 12 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + | 1920 "ColumnName: c13 ColumnTypeName: interval minute to second Precision: 15 Scale: 3 ColumnDisplaySize: 15 ColumnType: 3 ColumnClassName: java.math.BigDecimal\n" + |
1921 "Showing prepared query ParameterMetaData\n" + | 1921 "Showing prepared query ParameterMetaData\n" + |
1922 "ParameterTypeName: interval year Precision: 10 Scale: 0 ParameterType: 4 ParameterClassName: java.lang.Integer\n" + | 1922 "ParameterTypeName: interval year Precision: 10 Scale: 0 ParameterType: 4 ParameterClassName: java.lang.Integer\n" + |
1923 "ParameterTypeName: interval month Precision: 10 Scale: 0 ParameterType: 4 ParameterClassName: java.lang.Integer\n" + | 1923 "ParameterTypeName: interval month Precision: 10 Scale: 0 ParameterType: 4 ParameterClassName: java.lang.Integer\n" + |
1924 "ParameterTypeName: interval day Precision: 4 Scale: 0 ParameterType: 2 ParameterClassName: java.math.BigDecimal\n" + | 1924 "ParameterTypeName: interval day Precision: 9 Scale: 0 ParameterType: 2 ParameterClassName: java.math.BigDecimal\n" + |
1925 "ParameterTypeName: interval hour Precision: 8 Scale: 0 ParameterType: 3 ParameterClassName: java.math.BigDecimal\n" + | 1925 "ParameterTypeName: interval hour Precision: 11 Scale: 0 ParameterType: 3 ParameterClassName: java.math.BigDecimal\n" + |
1926 "ParameterTypeName: interval minute Precision: 11 Scale: 0 ParameterType: 3 ParameterClassName: java.math.BigDecimal\n" + | 1926 "ParameterTypeName: interval minute Precision: 13 Scale: 0 ParameterType: 3 ParameterClassName: java.math.BigDecimal\n" + |
1927 "ParameterTypeName: interval second Precision: 13 Scale: 0 ParameterType: 3 ParameterClassName: java.math.BigDecimal\n" + | 1927 "ParameterTypeName: interval second Precision: 15 Scale: 0 ParameterType: 3 ParameterClassName: java.math.BigDecimal\n" + |
1928 "ParameterTypeName: interval year to month Precision: 10 Scale: 0 ParameterType: 4 ParameterClassName: java.lang.Integer\n" + | 1928 "ParameterTypeName: interval year to month Precision: 10 Scale: 0 ParameterType: 4 ParameterClassName: java.lang.Integer\n" + |
1929 "ParameterTypeName: interval day to hour Precision: 5 Scale: 0 ParameterType: 3 ParameterClassName: java.math.BigDecimal\n" + | 1929 "ParameterTypeName: interval day to hour Precision: 11 Scale: 0 ParameterType: 3 ParameterClassName: java.math.BigDecimal\n" + |
1930 "ParameterTypeName: interval day to minute Precision: 6 Scale: 0 ParameterType: 3 ParameterClassName: java.math.BigDecimal\n" + | 1930 "ParameterTypeName: interval day to minute Precision: 13 Scale: 0 ParameterType: 3 ParameterClassName: java.math.BigDecimal\n" + |
1931 "ParameterTypeName: interval day to second Precision: 7 Scale: 0 ParameterType: 3 ParameterClassName: java.math.BigDecimal\n" + | 1931 "ParameterTypeName: interval day to second Precision: 15 Scale: 0 ParameterType: 3 ParameterClassName: java.math.BigDecimal\n" + |
1932 "ParameterTypeName: interval hour to minute Precision: 9 Scale: 0 ParameterType: 3 ParameterClassName: java.math.BigDecimal\n" + | 1932 "ParameterTypeName: interval hour to minute Precision: 13 Scale: 0 ParameterType: 3 ParameterClassName: java.math.BigDecimal\n" + |
1933 "ParameterTypeName: interval hour to second Precision: 10 Scale: 0 ParameterType: 3 ParameterClassName: java.math.BigDecimal\n" + | 1933 "ParameterTypeName: interval hour to second Precision: 15 Scale: 0 ParameterType: 3 ParameterClassName: java.math.BigDecimal\n" + |
1934 "ParameterTypeName: interval minute to second Precision: 12 Scale: 0 ParameterType: 3 ParameterClassName: java.math.BigDecimal\n"); | 1934 "ParameterTypeName: interval minute to second Precision: 15 Scale: 0 ParameterType: 3 ParameterClassName: java.math.BigDecimal\n"); |
1935 } | 1935 } |
1936 | 1936 |
1937 private void Test_PlanExplainTraceDebugCmds() { | 1937 private void Test_PlanExplainTraceDebugCmds() { |
1938 sb.setLength(0); // clear the output log buffer | 1938 sb.setLength(0); // clear the output log buffer |
1939 | 1939 |