Effortlessly Creating Realistic Test Data in PostgreSQL with Data Generator

In the complex landscape of database development, test data emerges as a critical component. It forms the foundation for validating the functionality, performance, and integrity of database systems.

By mimicking real-world scenarios, test data enables developers to pinpoint potential issues, thereby fortifying the robustness and reliability of the system prior to its deployment in a production environment.

In response to this need, Data Generator in dbForge Studio for PostgreSQL comes into play. This powerful tool is designed to simplify and optimize the process of generating PostgreSQL test data. As part of a comprehensive PostgreSQL GUI client, it facilitates the creation of large volumes of meaningful and realistic test data. With a plethora of customizable configuration options and support for various PostgreSQL data types, Data Generator proves to be an invaluable resource for any developer working with PostgreSQL databases. It not only accelerates the data generation process but also enhances the quality of testing, leading to more reliable and efficient database systems.


About dbForge Data Generator

Data Generator is a robust component of a comprehensive PostgreSQL GUI client, designed to facilitate the creation of large volumes of meaningful, realistic test data. It boasts a wide array of predefined data generators with customizable configuration options, enabling the population of database tables with random data.


  • Effortless Data Generation: Data Generator allows you to create vast amounts of realistic test data effortlessly.
  • Customizable Data Generators: You can create, save, and use your own data generators, fine-tuning your data generation process with several distribution modes.
  • Data Integrity Support: The tool ensures consistent data across multiple tables with data integrity support.
  • Command Line Automation: Automate and schedule data generation routines with the command line.
  • Support for PostgreSQL Data Types: The tool supports a diverse spectrum of PostgreSQL column data types.
  • Real-time Data Visualization: Obtain an accurate real-time visualization of the generated data.


  • Time-Saving: Data Generator saves you from the time-consuming task of manual data population.
  • Versatility: Whether it is text, images, addresses, dates, or names of people, dbForge Studio is capable of generating all kinds of data.
  • Efficiency: The tool streamlines data editing and reporting, making your daily work a pleasure.


  • Learning Curve: As with any tool, there might be a learning curve for users who are not familiar with PostgreSQL or data generation tools.
  • Cost: While the tool offers a lot of features, it is not free, which might be a consideration for some users.

How to Set Up PostgreSQL Data Generator

  1. Start the Data Generator: Navigate to the Tools menu and select the ‘New Data Generation’ option.
  2. Choose Connection and Database: A ‘Data Generator Project Properties’ dialog will appear. From the dropdown list, select the connection and database where you want to generate data, then click ‘Next’.
  3. Configure Data Generation Options: On the ‘Options’ page, you’ll find several settings:
    • Row Distribution Mode: Choose between ‘By specified number of option’ (default is 1000 rows) or ‘By generation of data by time’ (specify the time period in seconds).
    • Value Distribution Mode: Choose between ‘Random by timestamp’, ‘Random by seed’ (specify the seed value), or ‘Sequential’.
    • Column Properties: Set values to be unique, include NULL values % of rows, and include empty values % of rows.
Set Up PostgreSQL Data Generator
  1. If you don’t want the selected table to be truncated, uncheck the ‘Truncate data from table before generation’ checkbox.
  2. Open the Data Generation Project: Click ‘Open’ to proceed.
  3. Select Tables and Columns: In the ‘Data Generation Project’ document, select the tables and columns you want to populate. Define data generation settings for the selected column. All changes will be displayed in real-time.
  4. Populate Data: Click ‘Populate data to the target database’ to start populating the database.
  1. Choose Output Option: On the ‘Output’ page of the ‘Data Population Wizard’, select one of the following options: open the data population script in the internal editor, save the script to a file, or execute the data population script against the database without reviewing it. Click ‘Next’.
  1. Select General Data Population Options: On the ‘Options’ page, select the general data population options and click ‘Next’. You can save these options for later use or use the default settings of the tool.
select general data population options
  1. Add Additional Scripts (Optional): On the ‘Additional Scripts’ page, you can choose to execute a script before and/or after data population. Click ‘Next’.
  2. Review Summary: The ‘Summary’ page will display any error messages or warnings related to data generation.
  3. Generate Data: Click ‘Generate’ to complete the process.

By following these steps, you can easily set up and use the PostgreSQL Data Generator to populate your database with test data.

What variety of Test Data can be created?

Creating realistic test data is a crucial aspect of database development and testing. It allows developers to simulate real-world scenarios, validate system functionality, and identify potential issues. With Data Generator, creating vast amounts of realistic test data becomes an effortless task.

Creating Vast Amounts of Realistic Test Data

Data Generator is designed to generate massive volumes of meaningful, realistic test data. The tool comes with a large collection of predefined data generators with customizable configuration options, allowing you to populate database tables with random data. Whether you need to create a few hundred or several million rows of data, Data Generator can handle it with ease.

Support for Different PostgreSQL Data Types

One of the strengths of Data Generator is its support for a diverse spectrum of PostgreSQL column data types. Whether you’re working with INTEGER, DECIMAL, NUMERIC, FLOAT, TIME, DATE, DATETIME, YEAR, CHAR, VARCHAR, BINARY, VARBINARY, BLOB, TEXT, ENUM, SET, JSON, or any spatial data types, Data Generator has got you covered. This wide-ranging support ensures that you can generate realistic test data that aligns with your specific database schema.


Data Generator in dbForge Studio for PostgreSQL

Fine-tuning the Data Generation Process

Data Generator offers several distribution modes that allow you to fine-tune the data generation process. You can generate data by the specified number of rows, by the time specified, using a linked table, populating tables that already contain some data, or specifying the exact number of rows. These options provide you with the flexibility to tailor the data generation process to your specific needs.

In addition, you can customize individual generators for each supported data type. This includes setting the number of NULL rows, empty rows, defining data uniqueness, value ranges, and value distribution mode. These customization options ensure that the generated data closely mimics the characteristics of your actual data, thereby enhancing the realism and usefulness of your test data.

By leveraging these features and capabilities, you can create realistic test data in PostgreSQL effortlessly and efficiently.


In conclusion, we’ve explored how Data Generator in dbForge Studio for PostgreSQL simplifies the creation of realistic test data, its support for various PostgreSQL data types, and the customization options it offers for fine-tuning the data generation process. This tool not only accelerates the process of data generation but also enhances the quality of testing, leading to more reliable and efficient database systems. With Data Generator, creating vast amounts of realistic test data in PostgreSQL is no longer a daunting task, but an effortless and efficient process.

Ifeanyi Okondu
Ifeanyi Okondu

Ifeanyi Joseph Okondu is a Product Manager, technical writer, and creative. Connect with him on LinkedIn

Leave a Reply

Your email address will not be published. Required fields are marked *