@@ -60,36 +60,25 @@ public AbstractTransactSQLDialect(DialectResolutionInfo info) {
60
60
protected String columnType (int sqlTypeCode ) {
61
61
// note that 'real' is double precision on SQL Server, single precision on Sybase
62
62
// but 'float' is single precision on Sybase, double precision on SQL Server
63
- switch ( sqlTypeCode ) {
64
- case BOOLEAN :
65
- return "bit" ;
66
-
67
- case TINYINT :
68
- //'tinyint' is an unsigned type in Sybase and
69
- //SQL Server, holding values in the range 0-255
70
- //see HHH-6779
71
- return "smallint" ;
72
- case INTEGER :
73
- //it's called 'int' not 'integer'
74
- return "int" ;
75
-
76
- case DATE :
77
- case TIME :
78
- case TIMESTAMP :
79
- case TIME_WITH_TIMEZONE :
80
- case TIMESTAMP_WITH_TIMEZONE :
81
- return "datetime" ;
82
-
83
- case BLOB :
84
- return "image" ;
85
- case CLOB :
86
- return "text" ;
87
- case NCLOB :
88
- return "ntext" ;
89
-
90
- default :
91
- return super .columnType ( sqlTypeCode );
92
- }
63
+ return switch (sqlTypeCode ) {
64
+ case BOOLEAN -> "bit" ;
65
+
66
+ // 'tinyint' is an unsigned type in Sybase and
67
+ // SQL Server, holding values in the range 0-255
68
+ // see HHH-6779
69
+ case TINYINT -> "smallint" ;
70
+
71
+ //it's called 'int' not 'integer'
72
+ case INTEGER -> "int" ;
73
+
74
+ case DATE , TIME , TIMESTAMP , TIME_WITH_TIMEZONE , TIMESTAMP_WITH_TIMEZONE -> "datetime" ;
75
+
76
+ case BLOB -> "image" ;
77
+ case CLOB -> "text" ;
78
+ case NCLOB -> "ntext" ;
79
+
80
+ default -> super .columnType ( sqlTypeCode );
81
+ };
93
82
}
94
83
95
84
@ Override
@@ -173,20 +162,17 @@ public String trimPattern(TrimSpec specification, boolean isWhitespace) {
173
162
}
174
163
175
164
public static String replaceLtrimRtrim (TrimSpec specification , boolean isWhitespace ) {
176
- switch ( specification ) {
177
- case LEADING :
178
- return isWhitespace
179
- ? "ltrim(?1)"
180
- : "substring(?1,patindex('%[^'+?2+']%',?1),len(?1+'x')-1-patindex('%[^'+?2+']%',?1)+1)" ;
181
- case TRAILING :
182
- return isWhitespace
183
- ? "rtrim(?1)"
184
- : "substring(?1,1,len(?1+'x')-1-patindex('%[^'+?2+']%',reverse(?1))+1)" ;
185
- default :
186
- return isWhitespace
187
- ? "ltrim(rtrim(?1))"
188
- : "substring(?1,patindex('%[^'+?2+']%',?1),len(?1+'x')-1-patindex('%[^'+?2+']%',?1)-patindex('%[^'+?2+']%',reverse(?1))+2)" ;
189
- }
165
+ return switch (specification ) {
166
+ case LEADING -> isWhitespace
167
+ ? "ltrim(?1)"
168
+ : "substring(?1,patindex('%[^'+?2+']%',?1),len(?1+'x')-1-patindex('%[^'+?2+']%',?1)+1)" ;
169
+ case TRAILING -> isWhitespace
170
+ ? "rtrim(?1)"
171
+ : "substring(?1,1,len(?1+'x')-1-patindex('%[^'+?2+']%',reverse(?1))+1)" ;
172
+ default -> isWhitespace
173
+ ? "ltrim(rtrim(?1))"
174
+ : "substring(?1,patindex('%[^'+?2+']%',?1),len(?1+'x')-1-patindex('%[^'+?2+']%',?1)-patindex('%[^'+?2+']%',reverse(?1))+2)" ;
175
+ };
190
176
}
191
177
192
178
@ Override
0 commit comments