@@ -151,25 +151,25 @@ var CharsetCollationEngineTests = []CharsetCollationEngineTest{
151
151
{
152
152
Query : "SELECT v1, pk FROM test1 ORDER BY pk;" ,
153
153
Expected : []sql.Row {
154
- {"abc" , int32 (1 )}, {"ABC" , int32 (2 )}, {"aBc" , int32 (3 )}, {"AbC" , int32 (4 )},
154
+ {"abc" , int64 (1 )}, {"ABC" , int64 (2 )}, {"aBc" , int64 (3 )}, {"AbC" , int64 (4 )},
155
155
},
156
156
},
157
157
{
158
158
Query : "SELECT v1, pk FROM test1 ORDER BY v1, pk;" ,
159
159
Expected : []sql.Row {
160
- {"abc" , int32 (1 )}, {"ABC" , int32 (2 )}, {"aBc" , int32 (3 )}, {"AbC" , int32 (4 )},
160
+ {"abc" , int64 (1 )}, {"ABC" , int64 (2 )}, {"aBc" , int64 (3 )}, {"AbC" , int64 (4 )},
161
161
},
162
162
},
163
163
{
164
164
Query : "SELECT v1, pk FROM test2 ORDER BY pk;" ,
165
165
Expected : []sql.Row {
166
- {"abc" , int32 (1 )}, {"ABC" , int32 (2 )}, {"aBc" , int32 (3 )}, {"AbC" , int32 (4 )},
166
+ {"abc" , int64 (1 )}, {"ABC" , int64 (2 )}, {"aBc" , int64 (3 )}, {"AbC" , int64 (4 )},
167
167
},
168
168
},
169
169
{
170
170
Query : "SELECT v1, pk FROM test2 ORDER BY v1, pk;" ,
171
171
Expected : []sql.Row {
172
- {"ABC" , int32 (2 )}, {"AbC" , int32 (4 )}, {"aBc" , int32 (3 )}, {"abc" , int32 (1 )},
172
+ {"ABC" , int64 (2 )}, {"AbC" , int64 (4 )}, {"aBc" , int64 (3 )}, {"abc" , int64 (1 )},
173
173
},
174
174
},
175
175
},
@@ -190,67 +190,67 @@ var CharsetCollationEngineTests = []CharsetCollationEngineTest{
190
190
{
191
191
Query : "SELECT v1, pk FROM test1 WHERE v1 >= 'AbC' ORDER BY v1, pk;" ,
192
192
Expected : []sql.Row {
193
- {"abc" , int32 (1 )}, {"ABC" , int32 (2 )}, {"aBc" , int32 (3 )}, {"AbC" , int32 (4 )},
193
+ {"abc" , int64 (1 )}, {"ABC" , int64 (2 )}, {"aBc" , int64 (3 )}, {"AbC" , int64 (4 )},
194
194
},
195
195
},
196
196
{
197
197
Query : "SELECT v1, pk FROM test1 WHERE v1 <= 'aBc' ORDER BY v1, pk;" ,
198
198
Expected : []sql.Row {
199
- {"abc" , int32 (1 )}, {"ABC" , int32 (2 )}, {"aBc" , int32 (3 )}, {"AbC" , int32 (4 )},
199
+ {"abc" , int64 (1 )}, {"ABC" , int64 (2 )}, {"aBc" , int64 (3 )}, {"AbC" , int64 (4 )},
200
200
},
201
201
},
202
202
{
203
203
Query : "SELECT v1, pk FROM test1 WHERE v1 = 'ABC' ORDER BY v1, pk;" ,
204
204
Expected : []sql.Row {
205
- {"abc" , int32 (1 )}, {"ABC" , int32 (2 )}, {"aBc" , int32 (3 )}, {"AbC" , int32 (4 )},
205
+ {"abc" , int64 (1 )}, {"ABC" , int64 (2 )}, {"aBc" , int64 (3 )}, {"AbC" , int64 (4 )},
206
206
},
207
207
},
208
208
{
209
209
Query : "SELECT v1, pk FROM test1 WHERE v1 BETWEEN 'ABC' AND 'AbC' ORDER BY v1, pk;" ,
210
210
Expected : []sql.Row {
211
- {"abc" , int32 (1 )}, {"ABC" , int32 (2 )}, {"aBc" , int32 (3 )}, {"AbC" , int32 (4 )},
211
+ {"abc" , int64 (1 )}, {"ABC" , int64 (2 )}, {"aBc" , int64 (3 )}, {"AbC" , int64 (4 )},
212
212
},
213
213
},
214
214
{
215
215
Query : "SELECT v1, pk FROM test1 WHERE v1 IN ('abc') ORDER BY v1, pk;" ,
216
216
Expected : []sql.Row {
217
- {"abc" , int32 (1 )}, {"ABC" , int32 (2 )}, {"aBc" , int32 (3 )}, {"AbC" , int32 (4 )},
217
+ {"abc" , int64 (1 )}, {"ABC" , int64 (2 )}, {"aBc" , int64 (3 )}, {"AbC" , int64 (4 )},
218
218
},
219
219
},
220
220
{
221
221
Query : "SELECT v1, pk FROM test2 WHERE v1 > 'AbC' ORDER BY v1, pk;" ,
222
222
Expected : []sql.Row {
223
- {"aBc" , int32 (3 )}, {"abc" , int32 (1 )},
223
+ {"aBc" , int64 (3 )}, {"abc" , int64 (1 )},
224
224
},
225
225
},
226
226
{
227
227
Query : "SELECT v1, pk FROM test2 WHERE v1 >= 'AbC' ORDER BY v1, pk;" ,
228
228
Expected : []sql.Row {
229
- {"AbC" , int32 (4 )}, {"aBc" , int32 (3 )}, {"abc" , int32 (1 )},
229
+ {"AbC" , int64 (4 )}, {"aBc" , int64 (3 )}, {"abc" , int64 (1 )},
230
230
},
231
231
},
232
232
{
233
233
Query : "SELECT v1, pk FROM test2 WHERE v1 <= 'aBc' ORDER BY v1, pk;" ,
234
234
Expected : []sql.Row {
235
- {"ABC" , int32 (2 )}, {"AbC" , int32 (4 )}, {"aBc" , int32 (3 )},
235
+ {"ABC" , int64 (2 )}, {"AbC" , int64 (4 )}, {"aBc" , int64 (3 )},
236
236
},
237
237
},
238
238
{
239
239
Query : "SELECT v1, pk FROM test2 WHERE v1 = 'ABC' ORDER BY v1, pk;" ,
240
240
Expected : []sql.Row {
241
- {"ABC" , int32 (2 )},
241
+ {"ABC" , int64 (2 )},
242
242
},
243
243
},
244
244
{
245
245
Query : "SELECT v1, pk FROM test2 WHERE v1 BETWEEN 'ABC' AND 'AbC' ORDER BY v1, pk;" ,
246
246
Expected : []sql.Row {
247
- {"ABC" , int32 (2 )}, {"AbC" , int32 (4 )},
247
+ {"ABC" , int64 (2 )}, {"AbC" , int64 (4 )},
248
248
},
249
249
},
250
250
{
251
251
Query : "SELECT v1, pk FROM test2 WHERE v1 IN ('abc') ORDER BY v1, pk;" ,
252
252
Expected : []sql.Row {
253
- {"abc" , int32 (1 )},
253
+ {"abc" , int64 (1 )},
254
254
},
255
255
},
256
256
},
@@ -270,13 +270,13 @@ var CharsetCollationEngineTests = []CharsetCollationEngineTest{
270
270
{
271
271
Query : "SELECT v1, pk FROM test1 WHERE v1 <= 'aBc' ORDER BY v1, pk;" ,
272
272
Expected : []sql.Row {
273
- {"abc" , int32 (1 )}, {"ABC" , int32 (2 )}, {"aBc" , int32 (3 )}, {"AbC" , int32 (4 )},
273
+ {"abc" , int64 (1 )}, {"ABC" , int64 (2 )}, {"aBc" , int64 (3 )}, {"AbC" , int64 (4 )},
274
274
},
275
275
},
276
276
{
277
277
Query : "SELECT v1, pk FROM test2 WHERE v1 <= 'aBc' ORDER BY v1, pk;" ,
278
278
Expected : []sql.Row {
279
- {"abc" , int32 (1 )}, {"ABC" , int32 (2 )}, {"aBc" , int32 (3 )}, {"AbC" , int32 (4 )},
279
+ {"abc" , int64 (1 )}, {"ABC" , int64 (2 )}, {"aBc" , int64 (3 )}, {"AbC" , int64 (4 )},
280
280
},
281
281
},
282
282
{
@@ -288,19 +288,19 @@ var CharsetCollationEngineTests = []CharsetCollationEngineTest{
288
288
{
289
289
Query : "SELECT v1, pk FROM test2 WHERE v1 <= 'aBc' ORDER BY v1, pk;" ,
290
290
Expected : []sql.Row {
291
- {"abc" , int32 (1 )}, {"ABC" , int32 (2 )}, {"aBc" , int32 (3 )}, {"AbC" , int32 (4 )},
291
+ {"abc" , int64 (1 )}, {"ABC" , int64 (2 )}, {"aBc" , int64 (3 )}, {"AbC" , int64 (4 )},
292
292
},
293
293
},
294
294
{
295
295
Query : "SELECT v1, pk FROM test3 WHERE v1 <= 'aBc' ORDER BY v1, pk;" ,
296
296
Expected : []sql.Row {
297
- {"abc" , int32 (1 )}, {"ABC" , int32 (2 )}, {"aBc" , int32 (3 )}, {"AbC" , int32 (4 )},
297
+ {"abc" , int64 (1 )}, {"ABC" , int64 (2 )}, {"aBc" , int64 (3 )}, {"AbC" , int64 (4 )},
298
298
},
299
299
},
300
300
{
301
301
Query : "SELECT v1, pk FROM test4 WHERE v1 <= 'aBc' ORDER BY v1, pk;" ,
302
302
Expected : []sql.Row {
303
- {"abc" , int32 (1 )}, {"ABC" , int32 (2 )}, {"aBc" , int32 (3 )}, {"AbC" , int32 (4 )},
303
+ {"abc" , int64 (1 )}, {"ABC" , int64 (2 )}, {"aBc" , int64 (3 )}, {"AbC" , int64 (4 )},
304
304
},
305
305
},
306
306
{
@@ -376,13 +376,13 @@ var CharsetCollationEngineTests = []CharsetCollationEngineTest{
376
376
{
377
377
Query : "SELECT v1, pk FROM test2 WHERE v1 <= 'aBc' ORDER BY v1, pk;" ,
378
378
Expected : []sql.Row {
379
- {"abc" , int32 (1 )}, {"ABC" , int32 (2 )}, {"aBc" , int32 (3 )}, {"AbC" , int32 (4 )},
379
+ {"abc" , int64 (1 )}, {"ABC" , int64 (2 )}, {"aBc" , int64 (3 )}, {"AbC" , int64 (4 )},
380
380
},
381
381
},
382
382
{
383
383
Query : "SELECT v2, pk FROM test2 WHERE v2 <= 'aBc' ORDER BY v2, pk;" ,
384
384
Expected : []sql.Row {
385
- {"ABC" , int32 (2 )}, {"AbC" , int32 (4 )}, {"aBc" , int32 (3 )},
385
+ {"ABC" , int64 (2 )}, {"AbC" , int64 (4 )}, {"aBc" , int64 (3 )},
386
386
},
387
387
},
388
388
{
@@ -403,7 +403,7 @@ var CharsetCollationEngineTests = []CharsetCollationEngineTest{
403
403
Queries : []CharsetCollationEngineTestQuery {
404
404
{
405
405
Query : "SELECT * FROM test ORDER BY v1 COLLATE utf8mb4_bin ASC;" ,
406
- Expected : []sql.Row {{int32 (1 ), "a" }, {int32 (2 ), "b" }},
406
+ Expected : []sql.Row {{int64 (1 ), "a" }, {int64 (2 ), "b" }},
407
407
},
408
408
{
409
409
Query : "SELECT * FROM test ORDER BY v1 COLLATE utf8mb3_bin ASC;" ,
@@ -596,13 +596,13 @@ var CharsetCollationEngineTests = []CharsetCollationEngineTest{
596
596
{
597
597
Query : "SELECT * FROM test1 ORDER BY pk;" ,
598
598
Expected : []sql.Row {
599
- {int32 (1 ), uint16 (1 )}, {int32 (2 ), uint16 (2 )},
599
+ {int64 (1 ), uint16 (1 )}, {int64 (2 ), uint16 (2 )},
600
600
},
601
601
},
602
602
{
603
603
Query : "SELECT * FROM test2 ORDER BY pk;" ,
604
604
Expected : []sql.Row {
605
- {int32 (2 ), uint16 (2 )},
605
+ {int64 (2 ), uint16 (2 )},
606
606
},
607
607
},
608
608
{
@@ -643,13 +643,13 @@ var CharsetCollationEngineTests = []CharsetCollationEngineTest{
643
643
{
644
644
Query : "SELECT * FROM test1 ORDER BY pk;" ,
645
645
Expected : []sql.Row {
646
- {int32 (1 ), uint32 (1 )}, {int32 (2 ), uint32 (6 )},
646
+ {int64 (1 ), uint64 (1 )}, {int64 (2 ), uint64 (6 )},
647
647
},
648
648
},
649
649
{
650
650
Query : "SELECT * FROM test2 ORDER BY pk;" ,
651
651
Expected : []sql.Row {
652
- {int32 (2 ), uint32 (6 )},
652
+ {int64 (2 ), uint64 (6 )},
653
653
},
654
654
},
655
655
},
@@ -665,37 +665,37 @@ var CharsetCollationEngineTests = []CharsetCollationEngineTest{
665
665
{
666
666
Query : "SELECT COUNT(*) FROM test WHERE v1 LIKE 'ABC';" ,
667
667
Expected : []sql.Row {
668
- {int32 (1 )},
668
+ {int64 (1 )},
669
669
},
670
670
},
671
671
{
672
672
Query : "SELECT COUNT(*) FROM test WHERE v2 LIKE 'ABC';" ,
673
673
Expected : []sql.Row {
674
- {int32 (2 )},
674
+ {int64 (2 )},
675
675
},
676
676
},
677
677
{
678
678
Query : "SELECT COUNT(*) FROM test WHERE v1 LIKE 'A%';" ,
679
679
Expected : []sql.Row {
680
- {int32 (1 )},
680
+ {int64 (1 )},
681
681
},
682
682
},
683
683
{
684
684
Query : "SELECT COUNT(*) FROM test WHERE v2 LIKE 'A%';" ,
685
685
Expected : []sql.Row {
686
- {int32 (2 )},
686
+ {int64 (2 )},
687
687
},
688
688
},
689
689
{
690
690
Query : "SELECT COUNT(*) FROM test WHERE v1 LIKE '%C';" ,
691
691
Expected : []sql.Row {
692
- {int32 (1 )},
692
+ {int64 (1 )},
693
693
},
694
694
},
695
695
{
696
696
Query : "SELECT COUNT(*) FROM test WHERE v2 LIKE '%C';" ,
697
697
Expected : []sql.Row {
698
- {int32 (2 )},
698
+ {int64 (2 )},
699
699
},
700
700
},
701
701
{
@@ -705,19 +705,19 @@ var CharsetCollationEngineTests = []CharsetCollationEngineTest{
705
705
{
706
706
Query : "SELECT COUNT(*) FROM test WHERE v1 LIKE 'ABC';" ,
707
707
Expected : []sql.Row {
708
- {int32 (1 )},
708
+ {int64 (1 )},
709
709
},
710
710
},
711
711
{
712
712
Query : "SELECT COUNT(*) FROM test WHERE v2 LIKE 'ABC';" ,
713
713
Expected : []sql.Row {
714
- {int32 (2 )},
714
+ {int64 (2 )},
715
715
},
716
716
},
717
717
{
718
718
Query : "SELECT COUNT(*) FROM test WHERE v1 LIKE 'ABC' COLLATE utf8mb4_0900_ai_ci;" ,
719
719
Expected : []sql.Row {
720
- {int32 (2 )},
720
+ {int64 (2 )},
721
721
},
722
722
},
723
723
},
@@ -1252,88 +1252,4 @@ T.TABLE_SCHEMA AS 'database', T.TABLE_CATALOG AS 'catalog',
1252
1252
},
1253
1253
},
1254
1254
},
1255
- {
1256
- Name : "UTF-8 charset validation edge cases" ,
1257
- SetUpScript : []string {
1258
- "CREATE TABLE test_utf8_edge_edge (id INT PRIMARY KEY, c CHAR(10), v VARCHAR(20), t TEXT);" ,
1259
- },
1260
- Queries : []CharsetCollationEngineTestQuery {
1261
- {
1262
- Query : "INSERT INTO test_utf8_edge VALUES (1, 'Valid', 'ValidText', 'ValidLongText');" ,
1263
- Expected : []sql.Row {{types .NewOkResult (1 )}},
1264
- },
1265
- {
1266
- Query : "INSERT INTO test_utf8_edge VALUES (2, X'AE', 'ValidText', 'ValidLongText');" ,
1267
- ErrKind : types .ErrBadCharsetString ,
1268
- },
1269
- {
1270
- Query : "INSERT INTO test_utf8_edge VALUES (3, 'ValidText', X'AEAEAE', 'ValidLongText');" ,
1271
- ErrKind : types .ErrBadCharsetString ,
1272
- },
1273
- {
1274
- Query : "INSERT INTO test_utf8_edge VALUES (4, 'ValidText', 'ValidText', X'C0C1');" ,
1275
- ErrKind : types .ErrBadCharsetString ,
1276
- },
1277
- {
1278
- Query : "INSERT INTO test_utf8_edge VALUES (5, X'999897969594939291', 'ValidText', 'ValidLongText');" ,
1279
- ErrKind : types .ErrBadCharsetString ,
1280
- },
1281
- {
1282
- Query : "INSERT INTO test_utf8_edge VALUES (6, X'FE', 'ValidText', 'ValidLongText');" ,
1283
- ErrKind : types .ErrBadCharsetString ,
1284
- },
1285
- {
1286
- Query : "INSERT INTO test_utf8_edge VALUES (7, X'FF', 'ValidText', 'ValidLongText');" ,
1287
- ErrKind : types .ErrBadCharsetString ,
1288
- },
1289
- {
1290
- Query : "INSERT INTO test_utf8_edge VALUES (8, X'EDA080', 'ValidText', 'ValidLongText');" ,
1291
- ErrKind : types .ErrBadCharsetString ,
1292
- },
1293
- {
1294
- Query : "INSERT INTO test_utf8_edge VALUES (9, X'EDBFBF', 'ValidText', 'ValidLongText');" ,
1295
- ErrKind : types .ErrBadCharsetString ,
1296
- },
1297
- {
1298
- Query : "INSERT INTO test_utf8_edge VALUES (10, X'C080', 'ValidText', 'ValidLongText');" ,
1299
- ErrKind : types .ErrBadCharsetString ,
1300
- },
1301
- {
1302
- Query : "INSERT INTO test_utf8_edge VALUES (11, X'E08080', 'ValidText', 'ValidLongText');" ,
1303
- ErrKind : types .ErrBadCharsetString ,
1304
- },
1305
- {
1306
- Query : "INSERT INTO test_utf8_edge VALUES (12, X'F0808080', 'ValidText', 'ValidLongText');" ,
1307
- ErrKind : types .ErrBadCharsetString ,
1308
- },
1309
- {
1310
- Query : "INSERT INTO test_utf8_edge VALUES (13, X'F4908080', 'ValidText', 'ValidLongText');" ,
1311
- ErrKind : types .ErrBadCharsetString ,
1312
- },
1313
- {
1314
- Query : "INSERT INTO test_utf8_edge VALUES (14, X'80', 'ValidText', 'ValidLongText');" ,
1315
- ErrKind : types .ErrBadCharsetString ,
1316
- },
1317
- {
1318
- Query : "INSERT INTO test_utf8_edge VALUES (15, X'BF', 'ValidText', 'ValidLongText');" ,
1319
- ErrKind : types .ErrBadCharsetString ,
1320
- },
1321
- {
1322
- Query : "INSERT INTO test_utf8_edge VALUES (16, CONCAT('Valid', X'AE', 'Text'), 'ValidText', 'ValidLongText');" ,
1323
- ErrKind : types .ErrBadCharsetString ,
1324
- },
1325
- {
1326
- Query : "INSERT INTO test_utf8_edge VALUES (17, X'C2', 'ValidText', 'ValidLongText');" ,
1327
- ErrKind : types .ErrBadCharsetString ,
1328
- },
1329
- {
1330
- Query : "INSERT INTO test_utf8_edge VALUES (18, X'E0A0', 'ValidText', 'ValidLongText');" ,
1331
- ErrKind : types .ErrBadCharsetString ,
1332
- },
1333
- {
1334
- Query : "INSERT INTO test_utf8_edge VALUES (19, X'F09080', 'ValidText', 'ValidLongText');" ,
1335
- ErrKind : types .ErrBadCharsetString ,
1336
- },
1337
- },
1338
- },
1339
1255
}
0 commit comments