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

Создание фильтров для БД

03.01.2015, 20:41. Показов 10734. Ответов 24
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, подскажите, пожалуйста, как на представленном интерфейсе приложения по управлению базой данных туристического агентства реализовать фильтр по отображению путевок по отдельным видам отдыха, чтобы при вводе в поле "Поиск по видам отдыха" какого-либо вида отдыха, например: пляжный отдых, при нажатии на кнопку "Список путевок" в ListBox вывелся результат. Можно с помощью ListBox вобще это реализовать? Если да, то как?
Миниатюры
Создание фильтров для БД  
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
03.01.2015, 20:41
Ответы с готовыми решениями:

Создание Фильтров и Запросов в windowsForms для базы access
Доброго времени суток господа! "У меня есть мечта" - написать простую СУБД для access базы данных. Из функционала - добавление,...

Нужна библиотека для .Net по работе с фотограиями, создание эффектов и наложение фильтров
ПРивет! Нужна библиотека для .Net по работе с фотограиями, создание всяких эффектов и наложение фильтров, кто знает - выходи)

создание фильтров
Добрый день. Никак не могу создать фильтр в ленточной форме построенного на основе запроса. Как это можно реализовать в Access 2007. Была...

24
Эксперт .NET
 Аватар для insite2012
5548 / 4311 / 1218
Регистрация: 12.10.2013
Сообщений: 12,371
Записей в блоге: 2
03.01.2015, 20:49
Цитата Сообщение от Andrey26rus Посмотреть сообщение
Можно с помощью ListBox вобще это реализовать? Если да, то как?
Для начала покажите структуру самой БД и таблицы в ней.
0
1 / 1 / 0
Регистрация: 17.05.2014
Сообщений: 126
03.01.2015, 20:52  [ТС]
Это Вам нужно схему базы данных отправить?
0
Эксперт .NET
 Аватар для insite2012
5548 / 4311 / 1218
Регистрация: 12.10.2013
Сообщений: 12,371
Записей в блоге: 2
03.01.2015, 21:06
Цитата Сообщение от Andrey26rus Посмотреть сообщение
Вам нужно схему базы данных отправить?
Можете показать структуру таблицы (или таблиц)?
0
1 / 1 / 0
Регистрация: 17.05.2014
Сообщений: 126
03.01.2015, 21:31  [ТС]


База данных состоит из таблиц: сотрудники, должности, виды отдыха, отели, дополнительные услуги, клиенты и путёвки
0
Эксперт .NET
 Аватар для insite2012
5548 / 4311 / 1218
Регистрация: 12.10.2013
Сообщений: 12,371
Записей в блоге: 2
03.01.2015, 21:41
Andrey26rus, из какой из таблиц вам нужны данные? Я так понимаю, вам необходимо просто фильтровать таблицу "Путевки" по определенным полям, так?
0
1 / 1 / 0
Регистрация: 17.05.2014
Сообщений: 126
03.01.2015, 21:49  [ТС]
Вот смотрите, я создал запрос "Список путёвок" в нём я объединил таблицы Путёвки, Отели, Виды отдыха, Дополнительные услуги, Клиенты и Сотрудники и на основе него мне нужно сделать, чтобы отобразились путевки по отдельным видам отдыха, то есть допустим, введу в поле пляжный отдых и у нас должны вывестись путевки с пляжным отдыхом в ListBox при нажатии на кнопку "Список путёвок". Мне не понятно как это сделать
0
Эксперт .NET
 Аватар для insite2012
5548 / 4311 / 1218
Регистрация: 12.10.2013
Сообщений: 12,371
Записей в блоге: 2
03.01.2015, 21:56
Цитата Сообщение от Andrey26rus Посмотреть сообщение
я создал запрос "Список путёвок"
Цитата Сообщение от Andrey26rus Посмотреть сообщение
объединил таблицы Путёвки, Отели, Виды отдыха, Дополнительные услуги, Клиенты и Сотрудники
Как вы их объединили?
Цитата Сообщение от Andrey26rus Посмотреть сообщение
отобразились путевки по отдельным видам отдыха
Из какой именно таблицы? Или из всех?
Я тд, у вас немного не точно указана задача. Вот как я ее вижу:
По введенным данным отфильтровать все путевки из таблицы "Путевки".
Далее выбирать из других таблиц данные, еще каким-либо способом по необходимому критерию.
0
1 / 1 / 0
Регистрация: 17.05.2014
Сообщений: 126
03.01.2015, 22:28  [ТС]
Из таблицы "Путевки" нужно отфильтровать путевки по видам отдыха. А потом уже по странам и по отелям, чтобы у нас тоже вывелись путевки
0
Эксперт .NET
 Аватар для insite2012
5548 / 4311 / 1218
Регистрация: 12.10.2013
Сообщений: 12,371
Записей в блоге: 2
03.01.2015, 22:31
Цитата Сообщение от Andrey26rus Посмотреть сообщение
Из таблицы путевки нужно отфильтровать путевки по видам отдыха
Всего-навсего? Это же так просто на самом деле. Есть заполненная база, а то лень выдумывать названия для заполнения таблицы? Кстати, какой тип базы?
0
1 / 1 / 0
Регистрация: 17.05.2014
Сообщений: 126
03.01.2015, 22:36  [ТС]
База данных у меня уже заполнена, если Вам нужна могу прикрепить её. База данных SQL
0
Эксперт .NET
 Аватар для insite2012
5548 / 4311 / 1218
Регистрация: 12.10.2013
Сообщений: 12,371
Записей в блоге: 2
03.01.2015, 22:39
Цитата Сообщение от Andrey26rus Посмотреть сообщение
если Вам нужна
Конечно нужна. Мне лень выдумывать данные для таблицы.
0
1 / 1 / 0
Регистрация: 17.05.2014
Сообщений: 126
03.01.2015, 22:45  [ТС]
База данных туристического агентства.zip
0
Эксперт .NET
 Аватар для insite2012
5548 / 4311 / 1218
Регистрация: 12.10.2013
Сообщений: 12,371
Записей в блоге: 2
03.01.2015, 23:43
Andrey26rus, вот примерный вариант. Прикладываю проект, в коде не разберетесь.
Но на мой взгляд, лучше было бы организовать связи по таблицам (я их в базе не увидел) и использовать отношения (хотя, сказать по правде, я с отношениями не особо дружу, мне через LINQ как-то проще). Пробуйте. В текстовое поле вводите название отдыха, и из таблицы Путевки выводятся все путевки с таким кодом. Это требовалось?
Вложения
Тип файла: rar Архив WinRAR.rar (1.55 Мб, 91 просмотров)
1
1 / 1 / 0
Регистрация: 17.05.2014
Сообщений: 126
04.01.2015, 13:59  [ТС]
Да, спасибо большое. А проект написан на Visual Studio 2012?
0
Эксперт .NET
 Аватар для insite2012
5548 / 4311 / 1218
Регистрация: 12.10.2013
Сообщений: 12,371
Записей в блоге: 2
04.01.2015, 14:04
Цитата Сообщение от Andrey26rus Посмотреть сообщение
А проект написан на Visual Studio 2012?
На 2013. Вообще я предпочитаю 2010, но у вас база на новой студии создана, и в 2010 ее не откроешь.
0
1 / 1 / 0
Регистрация: 17.05.2014
Сообщений: 126
05.01.2015, 19:20  [ТС]
Подскажите, пожалуйста, в проекте, который Вы написали на Microsoft Visual Studio 2013, с него я вставил код в Microsoft Visual Studio 2008 в коде я почти разобрался, я понял, что Вы результат фильтрации данных из базы данных вместо элемента ListBox выводите в элемент DataGridView. У меня возникли такие ошибки при вставке кода.
"Ошибка 1 Имя типа или пространства имен "Tasks" отсутствует в пространстве имен "System.Threading" (пропущена ссылка на сборку?)" Строка 8
"Ошибка 2 Имя типа или пространства имен "DataSet1TableAdapters" отсутствует в пространстве имен "Приложение_управления_базой_данных" (пропущена ссылка на сборку?)" Строка 11
"Ошибка 3 Не удалось найти имя типа или пространства имен "DataSet1" (пропущена директива using или ссылка на сборку?)" Строка 17
"Ошибка 4 Не удалось найти имя типа или пространства имен "DataSet1" (пропущена директива using или ссылка на сборку?)" Строка 18

Подскажите, пожалуйста, как их исправить? И какие элементы я не так создал?

Добавлено через 1 минуту
Код

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
 
using Приложение_управления_базой_данных.DataSet1TableAdapters;
 
namespace Приложение_управления_базой_данных
{
    public partial class Form1 : Form
    {
        DataSet1.Виды_отдыхаDataTable restTable = new DataSet1.Виды_отдыхаDataTable();
        DataSet1.ПутевкиDataTable pointsTable = new DataSet1.ПутевкиDataTable();
        public Form1() {
            InitializeComponent();
            this.Load += Form1_Load;
            button8.Click += button8_Click;
        }
 
 
        private void button17_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show("Вы уверены, что хотите выйти?", Application.ProductName, MessageBoxButtons.YesNo) != DialogResult.No)
                Application.Exit();
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            Form2 secondForm = new Form2();
            //скрываем форму из панели задач
            secondForm.ShowInTaskbar = false;
            //устанавливаем форму по центру экрана
            secondForm.StartPosition = FormStartPosition.CenterScreen;
            secondForm.ShowDialog(this);
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            Form3 secondForm = new Form3();
            //скрываем форму из панели задач
            secondForm.ShowInTaskbar = false;
            //устанавливаем форму по центру экрана
            secondForm.StartPosition = FormStartPosition.CenterScreen;
            secondForm.ShowDialog(this);
        }
 
        private void button3_Click(object sender, EventArgs e)
        {
            Form4 secondForm = new Form4();
            //скрываем форму из панели задач
            secondForm.ShowInTaskbar = false;
            //устанавливаем форму по центру экрана
            secondForm.StartPosition = FormStartPosition.CenterScreen;
            secondForm.ShowDialog(this);
        }
 
        private void button4_Click(object sender, EventArgs e)
        {
            Form5 secondForm = new Form5();
            //скрываем форму из панели задач
            secondForm.ShowInTaskbar = false;
            //устанавливаем форму по центру экрана
            secondForm.StartPosition = FormStartPosition.CenterScreen;
            secondForm.ShowDialog(this);
        }
 
        private void button5_Click(object sender, EventArgs e)
        {
            Form6 secondForm = new Form6();
            //скрываем форму из панели задач
            secondForm.ShowInTaskbar = false;
            //устанавливаем форму по центру экрана
            secondForm.StartPosition = FormStartPosition.CenterScreen;
            secondForm.ShowDialog(this);
        }
 
        private void button6_Click(object sender, EventArgs e)
        {
            Form7 secondForm = new Form7();
            //скрываем форму из панели задач
            secondForm.ShowInTaskbar = false;
            //устанавливаем форму по центру экрана
            secondForm.StartPosition = FormStartPosition.CenterScreen;
            secondForm.ShowDialog(this);
        }
 
        private void button7_Click(object sender, EventArgs e)
        {
            Form8 secondForm = new Form8();
            //скрываем форму из панели задач
            secondForm.ShowInTaskbar = false;
            //устанавливаем форму по центру экрана
            secondForm.StartPosition = FormStartPosition.CenterScreen;
            secondForm.ShowDialog(this);
        }
 
        private void Form1_Load(object sender, EventArgs e)
        {
            // TODO: данная строка кода позволяет загрузить данные в таблицу "база_данных_туристического_агентстваDataSet1.Виды_отдыха". При необходимости она может быть перемещена или удалена.
            this.виды_отдыхаTableAdapter.Fill(this.база_данных_туристического_агентстваDataSet1.Виды_отдыха);
            using (Виды_отдыхаTableAdapter adapter = new Виды_отдыхаTableAdapter())
            {
                adapter.Fill(restTable);
            }
            using (ПутевкиTableAdapter adapter = new ПутевкиTableAdapter())
            {
                adapter.Fill(pointsTable);
            }
        }
        private void button8_Click(object sender, EventArgs e) {
            var restCode = restTable.AsEnumerable()
                .Where(r => r.Field<string>("Наименование") == textBox1.Text)
                .Select(r => r.Field<int>("Код вида"))
                .FirstOrDefault();
            if (restCode != 0)
            {
                DataTable selectedTable = pointsTable
                    .Where(r => r.Field<int>("Код вида") == restCode)
                    .CopyToDataTable();
                dataGridView1.DataSource = selectedTable;
            }
        }
    }
}
Добавлено через 1 час 33 минуты
Извините, за беспокойство, пожалуйста, я понял как исправить ошибки. Исправил, но у меня выводится ещё одна, подскажите пожалуйста, что не так?

Ошибка 1 Имя типа или пространства имен "Tasks" отсутствует в пространстве имен "System.Threading" (пропущена ссылка на сборку?) Строка 9
0
Эксперт .NET
 Аватар для insite2012
5548 / 4311 / 1218
Регистрация: 12.10.2013
Сообщений: 12,371
Записей в блоге: 2
05.01.2015, 22:48
Цитата Сообщение от Andrey26rus Посмотреть сообщение
"Ошибка 1 Имя типа или пространства имен "Tasks" отсутствует в пространстве имен "System.Threading"
Причина:
Цитата Сообщение от Andrey26rus Посмотреть сообщение
я вставил код в Microsoft Visual Studio 2008
Нужен FW не ниже 4.0, и студия 2010.
0
1 / 1 / 0
Регистрация: 17.05.2014
Сообщений: 126
05.01.2015, 23:14  [ТС]
Спасибо большое, я только что уже разобрался, всё заработало. Теперь подскажете? как можно сделать фильтры, чтобы из таблицы "Отели" и "Путевки" выводились путевки по введённому в TextBox3 отелю

Добавлено через 2 минуты
Код Вам нужно отправить? Чтобы Вы посмотрели, что нужно добавить. Я добавил, но компиллятор ругается
0
Эксперт .NET
 Аватар для insite2012
5548 / 4311 / 1218
Регистрация: 12.10.2013
Сообщений: 12,371
Записей в блоге: 2
05.01.2015, 23:14
Цитата Сообщение от Andrey26rus Посмотреть сообщение
чтобы из таблицы "Отели" и "Путевки" выводились путевки по введённому в TextBox3 отелю
По тому же самому принципу, что я вам и показал в примере.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
05.01.2015, 23:14
Помогаю со студенческими работами здесь

Реализовать программу применения графических фильтров к фотографии (5 фильтров)
Помогите выполнить задание С++ Реализовать программу применения графических фильтров к фотографии (5 фильтров)

Автошкола. Создание запросов и фильтров
Я только начинаю работать с SQL Server и многого не знаю, поэтому надеюсь на вашу помощь. Задание: Автошкола предоставляет возможность...

Вывод статистики и создание фильтров
Добрый день, уважаемые. Создал эту тему, потому что нужен совет от опытных фронт-ендщиков. Для начала напишу коротенькую предысторию...

Создание двух фильтров в форме
УВ коллеги! Прошу помочь мне разобраться как сделать в форме два фильтра (комбинированный список). --1_й по году --2_й по...

Создание фильтров в Excel (*.xls)
Можно ли как-то создавать файлы xls и использовать фильтры, к примеру, &quot;автофильтр&quot;. В модуле Spreadsheet::WriteExcel ничего такого не...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Сумматор с применением элементов трёх состояний.
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, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru