Это интересный вопрос.Генерировать случайные значения достаточно просто - простой цикл вокруг словаря данных с вызовами DBMS_RANDOM сделает свое дело.
За исключением двух вещей.
Одно, как указывает @FrustratedWithForms, есть осложнение ограничений внешнего ключа.Давайте добавим значения поиска (справочные данные) в микс.
Во-вторых, случайность не очень реалистична.Основным драйвером для использования случайных данных является потребность в больших объемах данных, вероятно, для тестирования производительности.Но реальные наборы данных не являются случайными, они содержат перекосы и комки, переменные длины строк и, конечно, шаблоны (особенно в отношении дат).
Поэтому вместо того, чтобы пытаться генерировать случайные данные, я предлагаю вам попытатьсяполучить реальный набор данных.В идеале ваш пользователь / клиент сможет предоставить один, желательно анонимный.В противном случае попробуйте взять что-то, что уже является общественным достоянием, и помассируйте его в соответствии с вашими конкретными требованиями.Информационные шимпанзе - главные бананы, когда дело доходит до этих вопросов. Проверьте их .