Понякога може да се наложи бързо да създадете много данни за тестване на натоварването. Можете да изберете и вмъкнете в същата таблица в MySQL. Този подход бързо увеличава съществуващите ви таблици. Дава много записи за игра. Ето няколко начина да го направите.
Вмъкване в същата таблица в MySQL
Синтаксис
INSERT INTO table_name ( field1, field2,...fieldN ) SELECT field1, field2, fieldN from table_name;
Пример
За таблица име_на_таблица с колониа, б, в
+------+------+------+ | a | b | c | +------+------+------+ | 1 | 2 | 3 | | 4 | 5 | 6 | | 7 | 8 | 9 | | 3 | 3 | 3 | +------+------+------+
Вмъкнете в същата таблица в MySQL всички записи от таблица
mysql> INSERT INTO table_name (a,b,c) select a,b,c from table_name; +------+------+------+ | a | b | c | +------+------+------+ | 1 | 2 | 3 | | 4 | 5 | 6 | | 7 | 8 | 9 | | 3 | 3 | 3 | | 1 | 2 | 3 | | 4 | 5 | 6 | | 7 | 8 | 9 | | 3 | 3 | 3 | +------+------+------+
Вмъкнете в същата таблица в MySQL някои записи от таблица
mysql> INSERT INTO table_name (a,b,c) select a,b,c from table_name where a=1 or a=3; +------+------+------+ | a | b | c | +------+------+------+ | 1 | 2 | 3 | | 4 | 5 | 6 | | 7 | 8 | 9 | | 3 | 3 | 3 | | 1 | 2 | 3 | | 3 | 3 | 3 | +------+------+------+
Може да получите грешка за дублирана стойност, ако едно от тези полета е първичен ключ или имате ограничение за уникалност за поле. Ето как можете да го избегнете.
Вмъкване в същата таблица в MySQL без дубликати
Синтаксис
INSERT INTO table_name ( field1, field2,...fieldN ) SELECT field1, field2, fieldN from table_name ON DUPLICATE KEY UPDATE primary_key_field=<expression> ;
Пример
За таблица име_на_таблица с колони a, b, c и c е първичен ключ
+------+------+------+ | a | b | c | +------+------+------+ | 1 | 2 | 3 | | 4 | 5 | 6 | | 7 | 8 | 9 | +------+------+------+
Вмъкнете в същата таблица в MySQL всички записи от таблица
mysql> INSERT INTO table_name (a,b,c) select a,b,c from table_name ON DUPLICATE KEY c=c+1; +------+------+------+ | a | b | c | +------+------+------+ | 1 | 2 | 3 | | 4 | 5 | 6 | | 7 | 8 | 9 | | 1 | 2 | 4 | | 4 | 5 | 7 | | 7 | 8 | 10 | +------+------+------+
Вмъкнете в същата таблица в MySQL някои записи от таблица
mysql> INSERT INTO table_name (a,b,c) select a,b,c from table_name where a=1 or a=3 ON DUPLICATE KEY c=c+1; +------+------+------+ | a | b | c | +------+------+------+ | 1 | 2 | 3 | | 4 | 5 | 6 | | 7 | 8 | 9 | | 1 | 2 | 5 | +------+------+------+
Можете да прочетете повече за това как да направите групово вмъкване в MySQL