Essays.club - Получите бесплатные рефераты, курсовые работы и научные статьи
Поиск

База данных «Швейные товары»

Автор:   •  Май 20, 2020  •  Реферат  •  4,755 Слов (20 Страниц)  •  374 Просмотры

Страница 1 из 20

Задание

Основная база данных «Швейные товары». Сформировать несколько таблиц. Предусмотреть: ввод данных, редактирование, просмотр данных. Реализовать следующие типы запросов с использованием нескольких таблиц:

  • Для каждого вида швейных товаров указать сведения о нем (наименование, дату выпуска, поставщик, цена, дата продажи и т.п.).
  • Для каждого вида швейных товаров выдать список, отсортированный:
  • По дате выпуска
  • В алфавитном порядке
  • По стоимости
  • По дате продажи
  • Найти самый дорогой товар, самый дешевый, среднюю стоимость по каждому виду и в целом.
  • Найти швейные товары с ценой в заданных пределах (предусмотреть ввод цены с клавиатуры) по каждому виду и в целом.
  • Найти все товары заданного производителя (выбор).
  • Найти долю дешевых товаров (меньше заданного, ввод ограничения) от общего числа товаров.
  • Найти все товары с заданной датой выпуска (ввод даты).
  • Найти все товары, чья дата продажи находится в заданных пределах (ввод интервала) для заданного производителя (выбор производителя) и в целом.
  • Найти долю товаров, проданной за определенный период (ввод периода) от общего времени продаж.
  • Найти самый популярный товар (продано наибольшее количество) для заданной категории (для мужчин, женщин, детской) (ввод) и в целом.
  • Найти все товары, поступившие от заданного поставщика, чья стоимость больше, чем стоимость заданного товара (выбор наименования), поступившего из заданной страны (выбор страны).
  • Найти долю дешевого товара (чья стоимость меньше заданной, ввод стоимости) поступившего от заданного поставщика (выбор поставщика) и в целом.
  • Найти среднюю стоимость товара, проданного за определенный промежуток времени (ввод интервала).
  • Найти все товары, чья стоимость выше, чем средняя стоимость товара заданного производителя (выбор производителя).
  • Определить долю регулярных поставок заданного товара (выбор) по заданной дате отгрузки (ввод) от общего числа товаров.
  • Найти товар, который лучше всего раскупают, указать параметры (стоимость, производитель, для кого предназначен и т.д.).


Графическое представление базы данных и структуры таблиц


[pic 1][pic 2][pic 3][pic 4][pic 5][pic 6][pic 7][pic 8][pic 9][pic 10][pic 11][pic 12][pic 13][pic 14][pic 15][pic 16][pic 17][pic 18][pic 19][pic 20][pic 21]

Ход работы

Создание Базы Данных

CREATE DATABASE rgr;

Создание таблиц и пользовательского типа

CREATE TABLE countries (

        id SERIAL UNIQUE,

        name char(20)

);

CREATE TABLE firms (

        id SERIAL UNIQUE,

        name char(20)

);

CREATE TABLE categories (

        id SERIAL UNIQUE,

        name char(20)

);

CREATE TABLE providers (

        id SERIAL UNIQUE,

        name char(20),

country_id integer NOT NULL,

CONSTRAINT country_exists FOREIGN KEY (country_id) REFERENCES countries (id) ON DELETE CASCADE ON UPDATE CASCADE

);

CREATE TABLE models (

        id SERIAL UNIQUE,

        firm_id integer NOT NULL,

        name char(20),

        cat_id integer NOT NULL,

        CONSTRAINT models_pkey PRIMARY KEY (id),

        CONSTRAINT firm_exists FOREIGN KEY (firm_id) REFERENCES firms (id) ON DELETE CASCADE ON UPDATE CASCADE,

CONSTRAINT cat_exists FOREIGN KEY (cat_id) REFERENCES categories (id) ON DELETE CASCADE ON UPDATE CASCADE

);

CREATE TABLE tovar (

        id SERIAL UNIQUE,

        model_id integer NOT NULL,

        pro_id integer NOT NULL,

        date_out date NOT NULL,

        date_sell date NOT NULL,

        cost integer NOT NULL,

        CONSTRAINT tovar_pkey PRIMARY KEY (id),

        CONSTRAINT model_exists FOREIGN KEY (model_id) REFERENCES models (id) ON DELETE CASCADE ON UPDATE CASCADE,

        CONSTRAINT pro_exists FOREIGN KEY (pro_id) REFERENCES providers (id) ON DELETE CASCADE ON UPDATE CASCADE,

CHECK (date_out<=date_sell)

);


Содержание таблиц баз данных

Ограничение вывода – 10 записей 

rgr=# select * from countries;

  id |         name

----+----------------------

  1 | RUSSIA

  2 | USA

  3 | CHINA

  4 | JAPAN

  5 | FRANCE

  6 | TAIVAN

...

Скачать:   txt (35 Kb)   pdf (926.7 Kb)   docx (141.9 Kb)  
Продолжить читать еще 19 страниц(ы) »
Доступно только на Essays.club