वार्षिक सालाना भुगतान करें और हर सशुल्क प्लान पर 2 महीने मुफ़्त पाएं। प्लान देखें
साइन इन करें मुफ़्त शुरू करें

DB स्कीमा डिज़ाइनर

इनपुट
क्षेत्र का विवरण
a booking system: users, venues, time slots, payments, cancellations
नमूना आउटपुट 27 अक्तूबर 2026 को बनाया गया

-- PostgreSQL schema. -- Stores users, venues, reservable time slots, bookings, payments, and cancellations. -- All timestamps are timezone-aware, and monetary values use fixed-precision NUMERIC. CREATE TABLE users ( user_id BIGINT GENERATED ALWAYS AS IDENTITY PRIMARY KEY, email VARCHAR(320) NOT NULL, full_name VARCHAR(200) NOT NULL, phone VARCHAR(32), status VARCHAR(20) NOT NULL DEFAULT 'active' CHECK (status IN ('active', 'suspended')), created_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP, updated_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP, deleted_at TIMESTAMPTZ, CONSTRAINT ck_users_deleted_at CHECK (deleted_at IS NULL OR deleted_at >= created_at) ); CREATE TABLE venues ( venue_id BIGINT GENERATED ALWAYS AS IDENTITY PRIMARY KEY, name VARCHAR(200) NOT NULL, description TEXT, address_line1 VARCHAR(200) NOT NULL, address_line2 VARCHAR(200), city VARCHAR(100) NOT NULL, region VARCHAR(100), postal_code VARCHAR(32), country_code CHAR(2) NOT NULL CHECK (country_code = UPPER(country_code)), timezone VARCHAR(64) NOT NULL, capacity INTEGER NOT NULL CHECK (capacity > 0), status VARCHAR(20) NOT NULL DEFAULT 'active' CHECK (status IN ('active', 'inactive', 'closed')), created_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP, updated_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP, deleted_at TIMESTAMPTZ, CONSTRAINT ck_venues_deleted_at CHECK (deleted_at IS NULL OR deleted_at >= created_at) ); CREATE TABLE time_slots ( time_slot_id BIGINT GENERATED ALWAYS AS IDENTITY PRIMARY KEY, venue_id BIGINT NOT NULL, starts_at TIMESTAMPTZ NOT NULL, ends_at TIMESTAMPTZ NOT NULL, price_amount NUMERIC(12,2) NOT NULL CHECK (price_amount >= 0), currency CHAR(3) NOT NULL CHECK (currency = UPPER(currency)), status VARCHAR(20) NOT NULL DEFAULT 'available' CHECK (status IN ('available', 'blocked', 'unavaila

इसे इस्तेमाल करें DB स्कीमा डिज़ाइनर फ़ॉर्म इस नमूने के इनपुट से भरा खुलता है; जो चाहें बदलें।