{"id":119,"date":"2024-10-31T21:43:13","date_gmt":"2024-10-31T20:43:13","guid":{"rendered":"https:\/\/sqlable.com\/?page_id=119"},"modified":"2025-12-12T21:02:17","modified_gmt":"2025-12-12T20:02:17","slug":"generator","status":"publish","type":"page","link":"https:\/\/sqlable.com\/generator\/","title":{"rendered":"Data Generator"},"content":{"rendered":"\n<style>\n\n#list-templates {max-width: 500px;} \n.editor-error{color:red;padding:8px;background-color:#f6cece;margin:10px 0}.editor-valid{color:green;padding:8px;background-color:#d0f5a9;margin:10px 0}.editor-inprogress{color:orange;padding:8px;background-color:#ffe680;margin:10px 0}\n.editor-title {font-weight: bold; font-size: 26px; }\n.container-center {text-align: center; } \n.editor-container {border: 1px solid gray;} \n.hidden {display: none;}\n.right {float: right; margin-right: 6px; }\n\ninput[type=\"text\"], select, input[type=\"number\"] {\npadding: 7px;\n}\n\n.current-schema {\ntext-align:center;\nmargin-top: 9px;\n}\n#container-result-files {\n    margin-top:20px;\n    margin: auto;\n    max-width: 600px;\n}\n.template-container {\nmargin-top: 9px;\n}\n.templates-container {\nborder: 1px solid #3c5891;\n}\n.section-container {\npadding: 12px;\n}\n#list-templates {\npadding: 7px;\n}\n#list-templates a {\nmargin-top: 6px;\n}\n.section-title {\ntext-align: center;\nfont-size:1.4em;\nfont-weight:bold;\nmargin-bottom: 3px;\n}\nhr {\n    margin: 5px auto;\n}\n.sidebar {\n    padding-top: 10px;\n}\n@media screen and (min-width: 860px) {\n.content-page .body {\n    width: 70%;\n    float: left;\n\n}\n}\n@media screen and (max-width: 860px) {\n.column-double{width:90%;margin-bottom:10px;margin-left:5%}\n\n    .sidebar {\n        width: 95%;\n        margin-left: auto;\n        margin-right: auto;\n    }\n}\n.CodeMirror {\n    border: 1px solid black;\n}\ninput.check {\n    color: white;\n    background-color: #4daf52;\n    border: 1px solid gray;\n    margin-bottom: 12px;\n    margin-right:auto;\n    margin-left:auto;\n    display: block;\n    padding: 15px;\n    font-size:18px;\n}\ninput.check:hover {\n    color: #4daf52;\n    background-color: white;\n    border: 1px solid gray;\n}\ninput[type=text] {\nmax-width: 300px;\n}\n\t.email-editor-dropzone-container {\n\t\tmargin:0;\n\t\twidth:99%;\n\t\t-webkit-box-sizing: border-box; \n\t\t-moz-box-sizing: border-box;    \n\t\tbox-sizing: border-box; \n\t\tmin-height:600px;\n\t\tborder: 2px solid gray;\n\t\tdisplay:inline-block;\nposition: relative;\n\t}\n<\/style>\n\n\n\n<input type=\"button\" id=\"generate\" class=\"check right\" value=\"Generate\"\/>\n\n<div class=\"\">\n\t<div class=\"body\">\n\t\t<div class=\"\" style=\"overflow-wrap: break-word; clear:both;\">\n\t\t\t<div class=\"editor-msg\">\n\t\t\t\t<div id=\"editor-valid\" style=\"display:none;\" class=\"editor-valid\"><\/div>\n\t\t\t\t<div id=\"editor-error\" style=\"display:none;\" class=\"editor-error\"><\/div>\n\t\t\t<\/div>\n\t\t\t<div id=\"dropZone\" class=\"span\">\n\t\t\t\t<div class=\"columns\">\n\t\t\t\t\t<div class=\"csvField\">\n\t\t\t\t\t\t<div class=\"csvFieldData csvFieldButton csvFieldButtonMove\">\n\t\t\t\t\t\t\t<label class=\"csvFieldColumn\"><\/label>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<div class=\"csvFieldData csvFieldName\">\n\t\t\t\t\t\t\t<label class=\"csvFieldColumn\">Field name<\/label>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<div class=\"csvFieldData csvFieldType\">\n\t\t\t\t\t\t\t<label class=\"csvFieldColumn\">Data type<\/label>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<div class=\"csvFieldData\">\n\t\t\t\t\t\t\t<label class=\"csvFieldColumn\">Setting<\/label>\n\t\t\t\t\t\t<\/div>\t\t\t\t\t\t\t\t\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div id=\"columns\" class=\"columns\"><\/div>\n\t\t\t\t<br\/>\n                          <\/div>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n<div style=\"clear:both;\"><\/div>\n\n\n\n\n\n\n\n<div>\n    <div class=\"container-center\">\n        <input type=\"button\" class=\"action-button-editor csv-add-field span\" id=\"addColumn\" value=\"Add field\"  \/>\n    <\/div>\n    <br\/>\n    <div class=\"container-center container-action\" style=\"clear:both; border: 1px solid gray;padding: 12px;\">\n        <label class=\"span\">Format:<\/label> \n        <select class=\"span select-action csvInputConfSmall\" id=\"format\"><option value=\"CSV\">CSV<\/option><option value=\"SQL\">SQL<\/option><option value=\"JSONL\">JSONL<\/option><option value=\"JSON\">JSON<\/option><option value=\"XML\">XML<\/option><\/select>\n        <label class=\"span\"># Rows: <\/label> \n        <input type=\"number\" class=\"span select-action csvInputConfSmall\" id=\"numberOfRow\" value=\"1000\" \/>\n        <br\/><br\/>\n        <div id=\"XML-config\">\n            <label class=\"span\">Root tag<\/label> \n            <input type=\"text\" class=\"span select-action\" id=\"root\" value=\"root\" \/>\n            <label class=\"span\">Record tag<\/label> \n            <input type=\"text\" class=\"span select-action\" id=\"record\" value=\"record\" \/>\t\t\t\t\t\n        <\/div>\n        <div id=\"JSON-config\"><\/div>\n        <div id=\"JSONL-config\"><\/div>\n        <div id=\"SQL-config\">\n            <label class=\"span\">Table name<\/label> \n            <input type=\"text\" class=\"span select-action\" id=\"tablename\" value=\"MyTable\" \/>\n            <label class=\"span\">Include create table statement<\/label> \n            <select class=\"span select-action csvInputConfSmall\" id=\"createTable\"><option value='YES'>Yes<\/option><option value=\"NO\">No<\/option><\/select>\n        <\/div>\n        <div id=\"CSV-config\">\n            <label class=\"span\">Delimiter<\/label> \n            <select class=\"span select-action csvInputConfSmall\" id=\"separatorRow\"><option value=\",\">Comma<\/option><option value=\"\t\">Tab<\/option><option value=\";\">Semicolon<\/option><option value=\"|\" >Pipe<\/option><\/select>\n            <label class=\"span\">Quote<\/label> \n            <select class=\"span select-action csvInputConfSmall\" id=\"quoteRow\"><option value='\"'>Double quote<\/option><option value=\"'\">Quote<\/option><\/select>\n            <label class=\"span\">Escape<\/label> \n            <select class=\"span select-action csvInputConfSmall\" id=\"escapeRow\"><option value='\"'>Double quote<\/option><option value=\"'\">Quote<\/option><option value=\"\\\">Backslash<\/option><\/select>\n            <label class=\"span\">End line<\/label> \n            <select class=\"span select-action csvInputConfSmall\" id=\"endLine\"><option value=\"\\n\">\\n<\/option><option value=\"\\r\\n\">\\r\\n<\/option><\/select>\n            <br\/><br\/>\n            <label class=\"span\">Include header<\/label> \n            <select class=\"span select-action csvInputConfSmall\" id=\"headerCSV\"><option value='yes'>Yes<\/option><option value=\"no\">No<\/option><\/select>\n        <\/div>\n    <\/div>\t\t\t\t\t\n<\/div>\n<br\/>\n<br\/>\n\n\n\n<style>\n.container {\n  display: flex;\n  gap: 10px; \/* Optional space between the boxes *\/\n}\n.box {\n  flex: 1; \/* Both boxes take equal width *\/\n  padding: 20px;\n  border: 1px solid gray;\n}\n#templates-action {\n  display: flex;\n  flex-direction: column; \/* Aligne les \u00e9l\u00e9ments en colonne *\/\n  align-items: center; \/* Centre horizontalement les \u00e9l\u00e9ments *\/\n}\n.link-action {  cursor: pointer;  }\ninput[type=\"button\"] {\nmargin-bottom: 12px;\npadding: 12px;\nmin-width: 250px;\n}\n<\/style>\n<div class=\"container\" >\n\t<div class=\"box \" >\n\t\t<div class=\"section-title\">Your templates<\/div>\n\t\t<div id=\"no-templates\">You don't have any templates yet<\/div>\n\t\t<div id=\"list-templates\"><\/div>\n\t<\/div>\t\t\n\t<div class=\"box \" id=\"templates-action\">\n\t\t<div class=\"current-schema\" >\n\t\t\t<div>Current template name<\/div>\t\t\t\t\n\t\t\t<input type=\"text\" id=\"template-name\" value=\"My template\" \/>\n\t\t<\/div>\n\t\t<input type=\"button\" id=\"template-save\" value=\"Save current template\" \/>\n\t\t<input type=\"button\" id=\"template-clone\" value=\"Clone current template\" \/>\n\t\t<input type=\"button\" id=\"template-export\" value=\"Export current template to file\" \/>\n\t\t<input type=\"button\" id=\"template-import\" value=\"Import template from file\" \/>\n\t\t<input type=\"file\" id=\"template-file\" style=\"display:none;\" \/>\n\t<\/div>\n\n\t\n\t<\/div>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">How to generate test data<\/h2>\n\n\n\n<p>Follow these steps to configure and generate your test data:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Set the number of fields<\/strong>: Start by adding the desired number of fields for your dataset.<\/li>\n\n\n\n<li><strong>Name each field<\/strong>: Assign a unique name to each field to easily identify it.<\/li>\n\n\n\n<li><strong>Choose the data type for each field<\/strong>: Select the data type (e.g., string, integer, date) for each field.<\/li>\n\n\n\n<li><strong>Configure field options<\/strong>: Provide any additional options for each data type (e.g., minimum\/maximum values for numbers).<\/li>\n\n\n\n<li><strong>Customize field arrangement<\/strong>: You can remove or reorder fields at any time to match your desired structure.<\/li>\n\n\n\n<li><strong>Set the number of rows <\/strong>: Define how many rows you want to generate.<\/li>\n\n\n\n<li><strong>Configure format<\/strong>: Select the format (CSV, SQL, XML, JSONL and JSON). For CSV format, customize the output by selecting the delimiter, quote, escape character, newline format, and whether to include a header row...<\/li>\n\n\n\n<li><strong>Generate data<\/strong>: Click on \"Generate\" button. The data file will be automatically downloaded.<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Saving your template<\/h2>\n\n\n\n<p>You can save templates to reuse your configurations for future data generation: <\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Save your template<\/strong>: Click \"Save current template\" to store your current template locally in your browser. You can specify the template name.<\/li>\n\n\n\n<li><strong>Copy the current template<\/strong>: Use the \"Copy current template\" button to duplicate a template and modify it as needed.<\/li>\n\n\n\n<li><strong>Manage your templates<\/strong>: In \"Your templates,\" you can view by clicking on the template name, and delete saved templates by clicking the delete button.<\/li>\n\n\n\n<li><strong>Backup templates<\/strong>: Your templates are saved in your browser. You can export them to a file by clicking the \"Export current template to file\" button, allowing you to import them on another computer or browser by clicking the \"Import template from file\" button.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Test Data Generation<\/h2>\n\n\n\n<p><strong>Test data<\/strong> is valuable in various projects, such as web applications, APIs, or data science solutions. Having reliable and <strong>realistic datasets<\/strong> allows for effective testing of functionality and performance without using real data.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">When to Generate Test Data?<\/h2>\n\n\n\n<p>Test data is essential in many cases: during the development of applications that require databases, the creation of data analysis pipelines, or even in building mockups to demonstrate how a solution works. It is also useful for testing different scenarios, such as search queries, transactions, or data migration processes. Generating synthetic data also helps protect sensitive data in simulations.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">SQLable Data Generator<\/h2>\n\n\n\n<p>SQLable's data generator quickly and easily <strong>creates test datasets<\/strong>. Whether you need data in CSV, SQL, JSON, JSONL, or XML formats, this <strong>dataset generator<\/strong> allows to precisely define data types, generation rules, and desired volumes. You only need to specify the columns, field types, and any specific constraints, and the tool will generate data ready to be injected into databases or used in your development environment. Data generation is quick, even for large volumes, which is difficult to achieve with current GPT-based tools.<\/p>\n\n\n\n<p>I hope this tool will be useful to many!<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Field name Data type Setting Format: CSVSQLJSONLJSONXML # Rows: Root tag Record tag Table name Include create table statement YesNo Delimiter CommaTabSemicolonPipe Quote Double quoteQuote Escape Double quoteQuoteBackslash End line \\n\\r\\n Include header YesNo Your templates You don&rsquo;t have any<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-119","page","type-page","status-publish","hentry"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/sqlable.com\/wp-json\/wp\/v2\/pages\/119"}],"collection":[{"href":"https:\/\/sqlable.com\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/sqlable.com\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/sqlable.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sqlable.com\/wp-json\/wp\/v2\/comments?post=119"}],"version-history":[{"count":51,"href":"https:\/\/sqlable.com\/wp-json\/wp\/v2\/pages\/119\/revisions"}],"predecessor-version":[{"id":299,"href":"https:\/\/sqlable.com\/wp-json\/wp\/v2\/pages\/119\/revisions\/299"}],"wp:attachment":[{"href":"https:\/\/sqlable.com\/wp-json\/wp\/v2\/media?parent=119"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}