Форум программистов, компьютерный форум, киберфорум
C#: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
2 / 2 / 0
Регистрация: 07.09.2020
Сообщений: 45

Создание SQL запроса на суммирование

11.11.2021, 21:03. Показов 1463. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, форумчане, у меня почти сделанный курсач в котором остается сделать автоматический подсчет итоговый цены. БД имеет 3 н.ф. Скелет кода и схема прилагается.
C#
1
2
3
4
5
6
7
8
9
10
11
12
 //Тут должна быть функция подсчета итоговой цены.
        private void button2_Click(object sender, EventArgs e)
        {
            dataGridView1.DataSource = null;
            dataSet.Clear();
            connection.Open();
            SqlCommand comand = new SqlCommand("SELECT Services.Cost + Spare_parts.Cost AS TotalCost FROM  Service INNER JOIN Services ON Service.Id_services = Services.Id_services INNER JOIN Spare_parts ON Service.Id_spare_parts = Spare_parts.Id_spare_parts WHERE...", connection);
            dataAdapter.SelectCommand = comand;
            dataAdapter.Fill(dataSet);
            dataGridView1.DataSource = dataSet.Tables[0];
            connection.Close();
        }
Таблица запчасти
SQL
1
2
3
4
5
6
CREATE TABLE [dbo].[Spare_parts] (
    [Id_spare_parts] INT           NOT NULL,
    [Name]           NVARCHAR (50) NULL,
    [Cost]           INT           NOT NULL,
    PRIMARY KEY CLUSTERED ([Id_spare_parts] ASC)
);
Таблица услуги
SQL
1
2
3
4
5
6
CREATE TABLE [dbo].[Spare_parts] (
    [Id_spare_parts] INT           NOT NULL,
    [Name]           NVARCHAR (50) NULL,
    [Cost]           INT           NOT NULL,
    PRIMARY KEY CLUSTERED ([Id_spare_parts] ASC)
);
Таблица сервис
SQL
1
2
3
4
5
6
7
8
9
10
11
12
CREATE TABLE [dbo].[Service] (
    [Id]             INT           NOT NULL,
    [State_number]   NVARCHAR (50) NOT NULL,
    [Id_services]    INT           NOT NULL,
    [Id_spare_parts] INT           NOT NULL,
    [Ready_date]     NVARCHAR (50) NULL,
    [Total_cost]     INT           NOT NULL,
    CONSTRAINT [PK_Service] PRIMARY KEY CLUSTERED ([Id] ASC),
    CONSTRAINT [FK_Service_ToTable_1] FOREIGN KEY ([Id_services]) REFERENCES [dbo].[Services] ([Id_services]),
    CONSTRAINT [FK_Service_ToTable_2] FOREIGN KEY ([Id_spare_parts]) REFERENCES [dbo].[Spare_parts] ([Id_spare_parts]),
    CONSTRAINT [FK_Service_ToTable] FOREIGN KEY ([State_number]) REFERENCES [dbo].[Cars] ([State_number])
);
Таблица Владельцы
SQL
1
2
3
4
5
6
7
CREATE TABLE [dbo].[Owner] (
    [Id_owner]              INT           NOT NULL,
    [FIO]                   NVARCHAR (50) NOT NULL,
    [Phone_number]          NVARCHAR (50) NOT NULL,
    [Driver_license_number] NVARCHAR (50) NULL,
    CONSTRAINT [PK_Owner] PRIMARY KEY CLUSTERED ([Id_owner] ASC)
);
Таблица машины
SQL
1
2
3
4
5
6
7
CREATE TABLE [dbo].[Cars] (
    [Id_owner]     INT           NOT NULL,
    [State_number] NVARCHAR (50) NOT NULL,
    [Car_brand]    NVARCHAR (50) NOT NULL,
    CONSTRAINT [PK_Cars] PRIMARY KEY CLUSTERED ([State_number] ASC),
    CONSTRAINT [FK_Cars_ToTable] FOREIGN KEY ([Id_owner]) REFERENCES [dbo].[Owner] ([Id_owner])
);
Миниатюры
Создание SQL запроса на суммирование  
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.11.2021, 21:03
Ответы с готовыми решениями:

Создание SQL-запроса
Нужно создать SQL-запрос на создание таблицы, но имя таблицы нужно взять из ComboBox Что то вроде: CREATE TABLE .( NOT NULL, ...

Сохранение SQL запроса на создание таблицы в VS2012
Только начал изучать технологии ADO.NET по книге Троелсена. На данный момент нету практически никакого опыта работы с БД. Проблема возникла...

Создание SQL запроса
Нужно создать запрос, который преобразует числовой формат даты, и вычислит сумму в данном случае за март и апрель в 1-ой табл. и выведет...

1
1497 / 1238 / 245
Регистрация: 04.04.2011
Сообщений: 4,363
11.11.2021, 21:47
Лучший ответ Сообщение было отмечено The_Original как решение

Решение

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

"Услуги" и "Детали" - это справочники. Для привязки их к актам нужны "смета" и "калькуляция", а их нет.

Сама total-cost в акте либо должна вычисляться автоматом (триггер или calculatad field), либо вообще не нужна, а вычисляется в запросах на выборку акта/актов.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.11.2021, 21:47
Помогаю со студенческими работами здесь

Создание запроса SQL
Здравствуйте. Проблема с запросами с помощью SQL. Был создан запрос (с помощью SQL, напечатан код), с помощью которого создаётся...

Создание запроса на MS SQl
Здравствуйте! Помогите, пожалуйста, создать запрос, который из первых трех таблиц выдаст четвертую как на скриншоте.

Создание SQL запроса
При создании запроса, если делаю так: const char *sql = {"SELECT Number FROM Company WHERE Name = 'Roga i Kopyta';"}; ... ...

Создание запроса на MS SQl
Помогите пожалуйста дописать запрос, нужно с базы данных скопировать пару полей и вставить в другую базу данных, нужно чтобы еще была...

Создание SQL запроса
Всем добрый вечер!!!! Суть такая: Есть 6 таблиц сделаные в МS Access. Уже подключены к Delphi. Теперь мне надо сделать 3-4 запроса в SQL,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru