Создать пачку записей в MySQL

114
15 декабря 2016, 15:50

Каким образом можно создать множество записей в mysql/postgres ?
Написать сценарий php не катит: количество записей, которое требуется создать - несколько лямов.
Просто иногда возникает желание протестировать ту или иную фишку в базе, для этого требуется много записей, содержимое которых не так важно.
Есть какой-то аналог fill_array?

UPD: Нашел способ через процедуры. Что наталкивает на мысль, что более прямого способа нет

Answer 1

Нащел здесь

Сделал демку

MySQL 5.5.30 Schema Setup:

CREATE OR REPLACE VIEW generator_16
AS SELECT 0 n UNION ALL SELECT 1  UNION ALL SELECT 2  UNION ALL 
   SELECT 3   UNION ALL SELECT 4  UNION ALL SELECT 5  UNION ALL
   SELECT 6   UNION ALL SELECT 7  UNION ALL SELECT 8  UNION ALL
   SELECT 9   UNION ALL SELECT 10 UNION ALL SELECT 11 UNION ALL
   SELECT 12  UNION ALL SELECT 13 UNION ALL SELECT 14 UNION ALL 
   SELECT 15;
CREATE OR REPLACE VIEW generator_256
AS SELECT ( ( hi.n << 4 ) | lo.n ) AS n
     FROM generator_16 lo, generator_16 hi;
CREATE OR REPLACE VIEW generator_4k
AS SELECT ( ( hi.n << 8 ) | lo.n ) AS n
     FROM generator_256 lo, generator_16 hi;
CREATE OR REPLACE VIEW generator_64k
AS SELECT ( ( hi.n << 8 ) | lo.n ) AS n
     FROM generator_256 lo, generator_256 hi;
CREATE OR REPLACE VIEW generator_1m
AS SELECT ( ( hi.n << 16 ) | lo.n ) AS n
     FROM generator_64k lo, generator_16 hi;
CREATE TABLE testme (id int ,txt varchar(255));
INSERT INTO testme (SELECT n,"test text" from generator_1m where n<100000) ;

Query 1:

select * from testme limit 5

Results:

| ID |       TXT |
------------------
|  0 | test text |
|  1 | test text |
|  2 | test text |
|  3 | test text |
|  4 | test text |
Answer 2

Можно использовать LOAD DATA INFILE

The LOAD DATA INFILE statement reads rows from a text file into a table at a very high speed.

READ ALSO
Найти общие элементы в массиве

Найти общие элементы в массиве

Есть запросы которые выдают таблицу видаid и много строк нужно каким то образом найти получить запрос с общими id из этих запросом

150
Добавление записи в MySQL!

Добавление записи в MySQL!

Помогите, не могу занести переменную $browser в БД! Cуть такова: есть 2 скрипта 1-й отвечает за последний визит на сайте 2-й за браузер с какого заходили

179
PhpMyAdmin ошибка 500

PhpMyAdmin ошибка 500

Господа, установленный из пакетов на ubuntu 1304 phpMyAdmin, выдает ошибку 500 Internal Server Error на странице "Настройки", хотя все остальные работает

225
Аутентификация пользователя

Аутентификация пользователя

Как происходит аутентификация в любой соцсети, когда после ввода логина и пароль, если не выйти, то будешь автоматически аутентифицироваться

195