59 lines
2.1 KiB
Plaintext
59 lines
2.1 KiB
Plaintext
SET autocommit = 0;
|
|
START TRANSACTION;
|
|
|
|
*** multi-statemement insert, inserting first positive then negative number:
|
|
|
|
INSERT INTO t1 (`id`, `int1`, `int1_key`, `int1_unique`,
|
|
`int2`, `int2_key`, `int2_unique`,
|
|
`for_update`, `connection_id`, `thread_id`, `is_uncommitted`, `is_consistent`)
|
|
VALUES (40, 40, 40, CONNECTION_ID(),
|
|
-40, -40, -CONNECTION_ID(),
|
|
0, CONNECTION_ID(), 0, 0, 1);
|
|
INSERT INTO t1 (`id`, `int1`, `int1_key`, `int1_unique`,
|
|
`int2`, `int2_key`, `int2_unique`,
|
|
`for_update`, `connection_id`, `thread_id`, `is_uncommitted`, `is_consistent`)
|
|
VALUES (-40, -40, -40, -CONNECTION_ID(),
|
|
40, 40, CONNECTION_ID(),
|
|
0, CONNECTION_ID(), 0, 0, 1);
|
|
COMMIT;
|
|
START TRANSACTION;
|
|
|
|
*** insert multiple rows using a single statement:
|
|
|
|
INSERT INTO t1 (`id`, `int1`, `int1_key`, `int1_unique`,
|
|
`int2`, `int2_key`, `int2_unique`,
|
|
`for_update`, `connection_id`, `thread_id`, `is_uncommitted`, `is_consistent`)
|
|
VALUES (41, 41, 41, CONNECTION_ID()+1,
|
|
-41, -41, -(CONNECTION_ID()+1),
|
|
0, CONNECTION_ID(), 0, 0, 1),
|
|
(41, 41, 41, CONNECTION_ID()+2,
|
|
41, 41, CONNECTION_ID()+2,
|
|
0, CONNECTION_ID(), 0, 0, 0),
|
|
(41, -41, -41, -(CONNECTION_ID()+2),
|
|
-41, -41, -(CONNECTION_ID()+2),
|
|
0, CONNECTION_ID(), 0, 0, 0);
|
|
COMMIT;
|
|
START TRANSACTION;
|
|
|
|
*** INSERT IGNORE using both known duplicate values and non-duplicates:
|
|
|
|
INSERT IGNORE INTO t1 (`id`, `int1`, `int1_key`, `int1_unique`,
|
|
`int2`, `int2_key`, `int2_unique`,
|
|
`for_update`, `connection_id`, `thread_id`, `is_uncommitted`, `is_consistent`)
|
|
VALUES (42, 42, 42, CONNECTION_ID()+3,
|
|
-42, -42, -(CONNECTION_ID()+3),
|
|
0, CONNECTION_ID(), 0, 0, 1);
|
|
INSERT IGNORE INTO t1 (`pk`, `id`, `int1`, `int1_key`, `int1_unique`,
|
|
`int2`, `int2_key`, `int2_unique`,
|
|
`for_update`, `connection_id`, `thread_id`, `is_uncommitted`, `is_consistent`)
|
|
VALUES (5, 43, 42, 42, CONNECTION_ID(),
|
|
-42, -42, CONNECTION_ID(),
|
|
0, CONNECTION_ID(), 0, 0, 0);
|
|
INSERT IGNORE INTO t1 (`id`, `int1`, `int1_key`, `int1_unique`,
|
|
`int2`, `int2_key`, `int2_unique`,
|
|
`for_update`, `connection_id`, `thread_id`, `is_uncommitted`, `is_consistent`)
|
|
VALUES (44, 42, 42, (CONNECTION_ID() + 1000) MOD 5000,
|
|
-42, -42, -((CONNECTION_ID() + 1000) MOD 5000),
|
|
0, CONNECTION_ID(), 0, 0, 1);
|
|
COMMIT;
|