SQL डेटासेट जनरेटर

ब्राउज़र में चलता है टेस्ट डेटा

टाइप और जनरेटर के साथ कॉलम तय करें और MySQL, PostgreSQL, SQL Server, Oracle या SQLite के लिए बैच किए हुए INSERT वाली, चलाने के लिए तैयार seed स्क्रिप्ट पाएँ।

केवल टेस्ट डेटा — सभी जनरेट किए गए नाम, संपर्क, पहचानकर्ता और संख्याएँ कृत्रिम हैं और किसी वास्तविक व्यक्ति या खाते से संबंधित नहीं हैं।
गोपनीयता: यह टूल पूरी तरह आपके ब्राउज़र में चलता है। आपका इनपुट कभी आपके डिवाइस से बाहर नहीं जाता।
टूल लोड हो रहा है…

SQL क्या है, और डायलेक्ट क्यों मायने रखता है?

SQL रिलेशनल डेटाबेस की क्वेरी भाषा है, जो रूपरेखा में मानकीकृत है पर PostgreSQL, MySQL, SQLite, SQL Server और Oracle में डायलेक्ट अंतरों — क्वोटिंग नियम, फ़ंक्शन, LIMIT बनाम TOP, डेट लिटरल — के साथ लागू है। फ़ॉर्मेटर कीवर्ड, इंडेंटेशन और लाइन ब्रेक को सामान्य करता है ताकि लंबी क्वेरी पढ़ी और रिव्यू की जा सके; वैलिडेटर स्टेटमेंट को पार्स करके डेटाबेस तक पहुँचने से पहले सिंटैक्स एरर ढूँढता है।

सुरक्षा नोट: जनरेट किए गए INSERT या IN-क्लॉज़ स्टेटमेंट फ़िक्सचर और माइग्रेशन के लिए हैं। एप्लिकेशन कोड में वैल्यू पैरामीटराइज़्ड क्वेरी से गुज़रनी चाहिए — यूज़र इनपुट से स्ट्रिंग जोड़कर SQL बनाना ही SQL इंजेक्शन का रास्ता है।

SQL डेटासेट जनरेटर कैसे इस्तेमाल करें

  1. जनरेटर टाइप के साथ कॉलम तय करें।
  2. टेबल का नाम, dialect और बैच साइज़ डालें।
  3. Generate दबाएँ और स्क्रिप्ट किसी टेस्ट डेटाबेस पर चलाएँ।

SQL डेटासेट जनरेटर की खूबियाँ

  • जनरेटर से अनुमान लगाकर बने, dialect-विशिष्ट टाइप वाला CREATE TABLE
  • बैच किए हुए बहु-पंक्ति INSERT या हर पंक्ति के लिए एक; वैकल्पिक transaction
  • MySQL/MariaDB, PostgreSQL, SQL Server, Oracle (INSERT ALL) और SQLite
  • स्ट्रिंग स्ट्रिंग ही रहती हैं (फ़ोन, कोड), जबकि संख्याओं, boolean, तारीख़ों और UUID को टाइप वाले literal मिलते हैं
  • सुरक्षित identifier (snake_case) और id कॉलम पर primary key
  • 5,000 तक पंक्तियाँ, seed लगाया जा सकता है, स्टेटमेंट गिनती और साइज़ के साथ

SQL डेटासेट जनरेटर का उदाहरण

PostgreSQL seed स्क्रिप्ट

इनपुट:

id:id
full_name:fullName
phone:phone:SA
hired_on:date · Table: employees · Dialect: PostgreSQL

आउटपुट:

CREATE TABLE IF NOT EXISTS employees (
  id INT NOT NULL,
  full_name VARCHAR(40) NOT NULL,
  phone VARCHAR(20) NOT NULL,
  hired_on DATE NOT NULL,
  PRIMARY KEY (id)
);

INSERT INTO employees (id, full_name, phone, hired_on) VALUES
  (1, 'Freddie Mitchell', '+966545797509', '2021-05-31'),
  (2, 'Aurora Taylor', '+966590325497', '2019-06-10');

SQL डेटासेट जनरेटर के बारे में अक्सर पूछे जाने वाले सवाल

कौन-कौन से dialect समर्थित हैं?

MySQL/MariaDB, PostgreSQL, SQL Server, Oracle (INSERT ALL) और SQLite — हर एक के अपने quoting, boolean literal और date/time टाइप के साथ।

कॉलम के टाइप कैसे चुने जाते हैं?

जनरेटर से: पूर्णांक INT बनते हैं, दशमलव DECIMAL, boolean BOOLEAN/BIT/TINYINT(1), तारीख़ें DATE, UUID UUID/CHAR(36) और टेक्स्ट VARCHAR(n)। फ़ोन नंबर और कोड संख्या जैसे दिखने पर भी स्ट्रिंग ही रहते हैं।

क्या मैं INSERT को बैच कर सकता हूँ?

हाँ — हर INSERT में पंक्तियों की संख्या तय करें (SQL Server में अधिकतम 1000) या हर पंक्ति के लिए एक INSERT पर चले जाएँ, और चाहें तो पूरी स्क्रिप्ट को एक transaction में लपेट दें।

किसी कॉलम में NULL वैल्यू कैसे लाऊँ?

कॉलम के नाम के बाद ? लगाएँ, जैसे manager_id?:int:1-20 या notes?:sentence। फिर उस कॉलम की क़रीब 15% पंक्तियाँ NULL के रूप में निकलती हैं, और CREATE TABLE उसे nullable घोषित करता है जबकि बाक़ी हर कॉलम को NOT NULL मिलता है। id नाम का कॉलम अपने-आप PRIMARY KEY भी बन जाता है।

संदर्भ

  • PostgreSQL Documentation: SQL SyntaxThe PostgreSQL Global Development GroupPostgreSQL में SQL की लेक्सिकल संरचना: आइडेंटिफ़ायर, क्वोटिंग, स्ट्रिंग कॉन्स्टेंट और एस्केपिंग।
  • SQL As Understood By SQLiteSQLiteSQLite द्वारा स्वीकृत SQL व्याकरण, स्टेटमेंट दर स्टेटमेंट, सिंटैक्स डायग्राम के साथ।
  • SQL InjectionOWASP FoundationSQL इंजेक्शन कैसे काम करता है और स्ट्रिंग जोड़ने के बजाय पैरामीटराइज़्ड क्वेरी ही बचाव क्यों हैं।
  • RFC 4180: Common Format and MIME Type for Comma-Separated Values (CSV) FilesIETF · 2005CSV के आम नियम: कॉमा सेपरेटर, CRLF लाइन एंड, और कॉमा, कोट या लाइन ब्रेक वाले फ़ील्ड की क्वोटिंग।