Skip to content
Snippets Groups Projects
Select Git revision
  • d4c8ac724c999436e18d660e518dc2d78eb73f79
  • master default protected
  • aaaa
  • editWFP
  • wfp
  • editview
  • xwfp
  • wlp
  • mypage
  • comment-delete-btn
  • home
  • Required-Login
  • signu
  • addloginsignup
  • logoutC
  • logout
  • big-update
  • login
  • finderboard
  • jeje
20 results

FindPost.vue

Blame
  • init.sql 4.25 KiB
    CREATE TABLE users (
        id                      SERIAL NOT NULL PRIMARY KEY, /* SERIAL is denoted as INTEGER when referencing */
        email                   VARCHAR(64) NOT NULL UNIQUE,
        nickname                VARCHAR(16) NOT NULL UNIQUE,
        password                VARCHAR(64) NOT NULL,
        created_at              TIMESTAMP NOT NULL DEFAULT NOW()
    );
    
    CREATE TYPE part_type AS ENUM ('ETC', 'CPU', 'GPU', 'MB', 'SSD', 'HDD');
    
    CREATE TABLE parts (
        id                      SERIAL NOT NULL PRIMARY KEY,
        name                    VARCHAR(64) NOT NULL UNIQUE,
        type                    part_type NOT NULL,
        image_url               VARCHAR(256) NOT NULL DEFAULT '/static/imgs/path/to/placeholder.png',
        created_at              TIMESTAMP NOT NULL DEFAULT NOW(),
        updated_at              TIMESTAMP NOT NULL DEFAULT NOW()
    );
    
    CREATE TABLE combinations (
        id                      SERIAL NOT NULL PRIMARY KEY,
        owner_id                INTEGER
                                CONSTRAINT combination_owner_id REFERENCES "users",
        name                    VARCHAR(64) NOT NULL,
        created_at              TIMESTAMP NOT NULL DEFAULT NOW()
    );
    
    CREATE TABLE relations (
        id                      SERIAL NOT NULL PRIMARY KEY,
        combination_id          INTEGER NOT NULL
                                CONSTRAINT relation_combination_id REFERENCES "combinations",
        part_id                 INTEGER
                                CONSTRAINT relation_part_id REFERENCES "parts"
    );
    
    CREATE TABLE part_info_cpu (
        part_id                 INTEGER NOT NULL
                                CONSTRAINT cpu_part_id REFERENCES "parts",
        family_type             VARCHAR(32),
        socket_type             VARCHAR(32),
        core_count              VARCHAR(32),
        thread_count            VARCHAR(32),
        base_clock              VARCHAR(32),
        max_clock               VARCHAR(32),
        mem_type                VARCHAR(32),
        tdp                     VARCHAR(32)
    );
    
    CREATE TABLE part_info_gpu (
        part_id                 INTEGER NOT NULL
                                CONSTRAINT gpu_part_id REFERENCES "parts",
        chipset_manufacturer    VARCHAR(32),
        family_type             VARCHAR(32),
        chipset                 VARCHAR(32),
        vram_type               VARCHAR(32),
        vram_size               VARCHAR(32),
        interface               VARCHAR(32),
        max_monitor_count       VARCHAR(32),
        power_consumption       VARCHAR(32)
    );
    
    CREATE TABLE part_info_mb (
        part_id                 INTEGER NOT NULL
                                CONSTRAINT mb_part_id REFERENCES "parts",
        board_type              VARCHAR(32),
        cpu_socket              VARCHAR(32),
        cpu_chipset             VARCHAR(32),
        power_phase             VARCHAR(32),
        ram_type                VARCHAR(32),
        ram_speed               VARCHAR(32),
        ram_slot_count          VARCHAR(32),
        form_factor             VARCHAR(32)
    );
    
    CREATE TABLE part_info_ram (
        part_id                 INTEGER NOT NULL
                                CONSTRAINT ram_part_id REFERENCES "parts",
        usage_type              VARCHAR(32),
        form_factor             VARCHAR(32),
        size                    VARCHAR(32),
        generation              VARCHAR(32),
        base_clock              VARCHAR(32),
        package_count           VARCHAR(32)
    );
    
    CREATE TABLE part_info_ssd (
        part_id                 INTEGER NOT NULL
                                CONSTRAINT ssd_part_id REFERENCES "parts",
        interface               VARCHAR(32),
        size                    VARCHAR(32),
        form_factor             VARCHAR(32),
        nand_type               VARCHAR(32),
        dram_type_size          VARCHAR(32),
        protocol                VARCHAR(32)
    );
    
    CREATE TABLE part_info_hdd (
        part_id                 INTEGER NOT NULL
                                CONSTRAINT hdd_part_id REFERENCES "parts",
        usage_type              VARCHAR(32),
        disk_standard_size      VARCHAR(32),
        interface               VARCHAR(32),
        buffer_size             VARCHAR(32),
        rpm                     VARCHAR(32),
        max_speed               VARCHAR(32),
        access_method           VARCHAR(32)
    );
    
    CREATE TABLE part_info_etc (
        part_id                 INTEGER NOT NULL
                                CONSTRAINT etc_part_id REFERENCES "parts",
        tags                    JSONB NOT NULL DEFAULT '{}'::jsonb
    );