Как автоматически заполнять таблицы базы данных - PullRequest
0 голосов
/ 18 июня 2020

У меня есть несколько таблиц в Postgres, которые я хочу заполнить фиктивными данными. Есть ли инструмент / утилита, которая может помочь с этим, что?

  1. соблюдает ограничения
  2. уважает внешние ключи
  3. данное определение схемы (выбранные таблицы) автоматически заполняется с данными

Ответы [ 2 ]

1 голос
/ 03 августа 2020

Не совсем то, что вы упомянули, но здесь вы можете найти программу python, которая (создает и / или) автоматически заполняет таблицы поддельными данными. Для всех, кому интересно, посмотрите здесь , если хотите.

введите описание изображения здесь

1 голос
/ 18 июня 2020

Вы можете попробовать прочитать generate_series () в postgresql, эту функцию можно использовать для предоставления таблицы с фиктивными данными.

insert into testscheme.testtable (id, name) 
    select generate_series, 'name1' from generate_series(1,250)

Это обеспечит 250 строк в таблице test. Вы можете продолжить работу на этом. Например, замените 1,250 ограничением первичного ключа. Например, с

nextval('testtable_pk'::regclass)

И если вы хотите, чтобы внешний ключ соблюдался, попробуйте использовать подзапрос: postgresql order by random (), выберите строки в случайном порядке:

select MAX(names) from testscheme.names ORDER BY random()

Если вы оберните все это в функцию, вы можете создать сценарий для заполнения материала :) Надеюсь, я смогу помочь.

Вот документация для generate_series () https://www.postgresql.org/docs/12/functions-srf.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...