Gerador de tabela de dados mock SQL
Gere comandos SQL (CREATE TABLE + INSERTs) com dados fictícios a partir do nome de uma tabela. Popule bancos de dados de teste e protótipos em segundos.
—
Tabelas de banco mock: dados sintéticos, distribuições e seeders
Uma tabela mock de banco é um conjunto de dados fictícios, mas bem formados, que imita o formato, os tipos e os relacionamentos de uma tabela real em produção. Times modernos tratam dados sintéticos como artefato de engenharia de primeira classe: eles alimentam desenvolvimento local, testes de integração, testes de carga, demos, ambientes de treinamento e tutoriais. Quando bem feito, o dataset mock captura não só valores plausíveis mas a forma estatística dos dados reais — sem nunca tocar em informações pessoais protegidas pela LGPD, GDPR ou HIPAA.
Este gerador produz uma tabela mock mínima para um único recurso; a referência abaixo cobre bibliotecas de geração, distribuições realistas, consistência de chave estrangeira, seeding determinístico e o toolchain de dados sintéticos usado em organizações de engenharia reais.
Bibliotecas de geração e casos de uso
Toda linguagem grande tem uma biblioteca faker madura. Faker.js (originalmente do Marak, hoje mantido por Sebastiano Pace) é o padrão de fato para Node e o navegador. Mimesis domina o ecossistema Python, com geradores localizados para 30+ regiões. Bogus serve .NET, MockNeat cobre Java e ferramentas web como generatedata.com, Mockaroo e JSON Generator deixam designers e analistas montarem datasets sem código. Casos de uso típicos incluem:
- Testes de carga: popular 1M+ linhas para validar estratégia de índice e planos de execução em volume realista.
- Dev de componentes: 10 mil linhas para tabelas paginadas, listas virtualizadas e infinite scroll.
- Prototipagem de UI: algumas centenas de linhas para preencher estados vazios e casos de borda.
- Demos, treinamentos e tutoriais: dados que parecem reais, podem ser distribuídos livremente e nunca vazam informação de cliente.
Distribuições realistas
Valores aleatórios uniformes parecem falsos no instante em que viram gráfico. Tabelas do mundo real seguem distribuições reconhecíveis: a lei de Zipf diz que uma fração pequena de produtos concentra a maior parte das vendas, a sazonalidade aumenta tráfego na Black Friday e despenca em janeiro, e o churn faz com que a atividade dos usuários decaia com o tempo. Bons mocks reproduzem essas formas:
// Sorteador de produto ponderado por Zipf
const pesos = produtos.map((_, i) => 1 / (i + 1));
const escolha = ponderado(produtos, pesos);
// Multiplicador sazonal
const mes = pedido.created_at.getMonth();
const fator = [0.7, 0.8, 0.9, 1, 1, 1, 1.1, 1, 1, 1.2, 1.5, 2][mes];
pedido.total *= fator;
O Synthetic Data Vault (SDV), projeto open source do MIT, ajusta modelos estatísticos a dados reais e emite linhas sintéticas que preservam distribuições por coluna e correlações entre colunas — útil ao alimentar pipelines de ML que de outra forma precisariam de PII real.
Relações e consistência de chave estrangeira
Datasets multi-tabela precisam respeitar a integridade referencial. Gere os pais primeiro e depois os filhos apontando para IDs já existentes:
- 1:N: cada
Postescolhe umUser.idexistente. - N:N: uma tabela de junção (
Enrollment) escolhe pares deStudent.ideCourse.idexistentes, com checagem de unicidade. - Auto-referencial: hierarquias (funcionário → gestor) exigem gerar as raízes primeiro e depois descer.
O seeding de PRNG transforma o gerador aleatório em função determinística — a mesma seed sempre produz o mesmo dataset, tornando bugs reproduzíveis: faker.seed(42) no Faker.js, random.seed(42) no Python.
Formatos de export e seeders
Dados mock saem em vários formatos: CSV para planilhas e cargas no BigQuery, JSON para stubs de API e fixtures de front-end, SQL INSERT para seeders tradicionais, XLSX para stakeholders não-técnicos e Parquet para data warehouses analíticos. Seeders de framework rodam o gerador sob demanda: Knex.js e Sequelize para Node, Prisma db seed, Rails db:seed, Laravel factories e Django fixtures. Em cenários B2B onde o dado de origem existe mas não pode sair da empresa, produtos comerciais como Tonic.ai, Gretel e Mostly AI geram cópias sintéticas que passam em auditoria de privacidade.
FAQ
Quão realista o mock precisa ser? Depende do objetivo. Dev de UI tolera uniforme; teste de performance precisa de distribuição realista; treino de ML exige SDV / Gretel. Escolha o tier mais barato que responde sua pergunta.
Dado mock é reproduzível? Sim — defina a seed antes de gerar. Com a mesma seed, versão de biblioteca e parâmetros, você obtém saída idêntica bit a bit entre máquinas e runs de CI.
É seguro commitar no git? Sim, desde que nenhum PII real tenha vazado. Linhas puramente sintéticas não têm preocupação de privacidade; cheque o locale do Faker se você um dia derivou parte do dataset de dados reais.
E a LGPD / GDPR? Dado sintético não é dado pessoal, porque não se refere a indivíduos identificáveis. Mas atenção aos quasi-identificadores — combinações de (CEP, idade, gênero) ainda podem re-identificar alguém, e por isso SDV e Mostly AI aplicam ruído de privacidade diferencial em cima.
Ferramentas Relacionadas
Gerador de CREATE TABLE SQL
Gera DDL CREATE TABLE a partir de uma lista de campos com tipos. Adiciona id PK auto-increment automaticamente.
Gerador de ALTER TABLE SQL
Gera comandos ALTER TABLE para adicionar/remover/renomear colunas e adicionar índices. Suporta MySQL, Postgres e SQLite.
Gerador de Liquibase changelog a partir de tabela
Gera um changelog Liquibase (YAML) com changeSet createTable — a partir do nome da tabela.