Форум программистов, компьютерный форум, киберфорум
Наши страницы
C#: Базы данных, ADO.NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.53/17: Рейтинг темы: голосов - 17, средняя оценка - 4.53
newman123
4 / 4 / 1
Регистрация: 28.07.2009
Сообщений: 13
1

Запрос данных из БД. Один большой запрос или много маленьких?

03.08.2009, 00:44. Просмотров 3343. Ответов 2
Метки нет (Все метки)

Есть основная форма, на которой расположен TreeView, содержащий щас 30 ветвей. По щелчке на ветке открываются дочерние формы, на каждой в среднем 10 контролов. Получаем на весь проект 30*50 = 1500 контролов. На каждый нужно раздавать права Visible - Unvisible, оно лежит в базе.

Варианты:
1) При щелчке на ветке делать запрос в базу и получать 50 строк, в каждой из которой содержится значение свойства IsVisible
2) При загрузке главной формы делать запрос в базу и получать 1500 строк на все контролы всех веток дерева(можно их положить в DataTable), и при щелчке на конкретной ветке проверять IsVisible уже в DataTable

В первом случае получаем множественные запросы в базу, во втором более медленное открытие главной формы.

Мне второй случай предпочтительнее, но мало ли в будущем будет не 30, а 300 веток в дереве, на каждой из которых будет по 150 контролов, в результате будет запрашиваться таблица в 45 тысяч строк.

Просто нужен совет бывалых, какой бы вариант выбрать в этом случае.
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.08.2009, 00:44
Ответы с готовыми решениями:

1 большой запрос или много маленьких в цыкле
Всем привет вопрос возможно дилетантский, но все же: Что лучше 1 запрос, с указанием длинного...

Один большой класс или много маленьких?
Здравствуйте. В программе есть N функций, которые необходимо выполнять друг за другом, но в...

Чтовыгоднее один большой сайт или много маленьких
Вот скажите новичку что выгоднее будет предположим один сайт раскрученный под много запросов и 300...

1 большой сайт или много маленьких
Хочу сделать один большой сайт или множество маленких. для заработка на продаже ссылок и...

Один длинный Regex или много маленьких?
Пытаюсь сделать мат-фильтр. Ничего кроме регекса к голову не пришло... Вопрос: искать одним...

2
Rififi
2367 / 1060 / 104
Регистрация: 03.05.2009
Сообщений: 2,656
03.08.2009, 00:56 2
хотя 45 тысяч строк - это смешное значение для mysql, oracle, ms, pg... - для любой мало-мальски приличной БД, не имеет смысла вытягивать на клиента кучу ненужных данных, тем более это может быть тонкий клиент.
0
Green
1920 / 425 / 41
Регистрация: 12.07.2007
Сообщений: 2,062
Завершенные тесты: 2
03.08.2009, 02:16 3
Это вопрос нагрузки на сервер БД. Если клиентов не много и данные в таблице могут меняться, тогда лучше вытаскивать малыми порциями.
0
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.08.2009, 02:16

Запрос в цикле или один длинный запрос?
Подскажите, пожалуйста, как лучше поступить? Есть магазин с 20 тыс товаров. Нужно обновить их по...

Как можно в памяти уместить больше данных ?Большой массив или список маленьких массивов ?
сабж выше

Не получается выполнить за один запрос много операций INSERT
Вообщем так. Выполняю вот такой вот запрос. $this->mysqli->query('insert into...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.