powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / КЛАДР, улучшение скорости запросов
10 сообщений из 35, страница 2 из 2
КЛАДР, улучшение скорости запросов
    #36946974
Senya_L
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ScareCrowавторЗдравствуйте!

Подскажите пожалуйста как правильно написать индексы для таблиц КЛАДР расположенных на Microsoft SQL Server 2005?Остается "во-вторых"
...
Рейтинг: 0 / 0
КЛАДР, улучшение скорости запросов
    #36947200
zvezda_t
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ScareCrow , Большое спасибо за ответ!!!

MAYAKOV_SV , благодарю Вас за информацию! Очень полезно!!!

Senya_L
Вообще-то выбирать одной кучей и районы, и города - не камильфо. Пользователя можно не любить, но уважать его время надо :)
Senya_L , дело в том что выборка у меня происходит через списки, вот так и бывают ситуации когда, города и районы на одном уровне, например:
регион - АЛТАЙ, следующий уровень:районы + г. Горно-Алтайск
соответственно и выборка у меня смешанная. вот.
...
Рейтинг: 0 / 0
КЛАДР, улучшение скорости запросов
    #36947232
Senya_L
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zvezda_tдело в том что выборка у меня происходит через списки, вот так ...Зачем взяли в руку эту бяку? Выбросите ее нафиг! Зачем равняться на эту неудобную хрень?
...
Рейтинг: 0 / 0
КЛАДР, улучшение скорости запросов
    #36947322
zvezda_t
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Senya_LЗачем взяли в руку эту бяку? Выбросите ее нафиг! Зачем равняться на эту неудобную хрень?[/quot]
да... чувствую меня ждет глобальное изменение и вариант2 для ввода данных и новая организация таблиц)))
спасибо!
...
Рейтинг: 0 / 0
КЛАДР, улучшение скорости запросов
    #36947362
MAYAKOV_SV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zvezda_t
соответственно и выборка у меня смешанная. вот.
Вот пример работы формы:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
 1 . Выбираем страну.
 2 . Выбираем регион.
 3 . Район.
 4 . Город.
 5 . Населенный пункт.
 6 . Улица.
 7 . Дом.
 8 . Квартира.

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

Получаем:
- проблемы при открытии формы нет, т.к. к кладру прога в это время не обращается.
- проще запросы, т.к. нет всяких UNION и сложных WHERE.
...
Рейтинг: 0 / 0
КЛАДР, улучшение скорости запросов
    #36947376
MAYAKOV_SV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zvezda_t
да... чувствую меня ждет глобальное изменение и вариант2 для ввода данных и новая организация таблиц)))
спасибо!
Мой совет:
Если у Вас есть время, лучше сделайте тестовый проект, и попробуйте разные варианты по вводу адреса. Тогда вам будет понятно как лучше-то сделать. И потом только принимайте решения.
...
Рейтинг: 0 / 0
КЛАДР, улучшение скорости запросов
    #36947550
Senya_L
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MAYAKOV_SVСамое сложное - сделать проверку правильности ввода. Да и то сложность условная - нужно немного смекалки :)Тов. Кодд этой "смекалке" давал более научное название - денормализация.

Я вот ее тоже практикую, но более в скромных масштабах. В таблице Address держу адреса строку (отформатированную по правилам БД, а не клиента), чтобы выборка была дешевле. И к тому же при обновлении КЛАДРа эти строки пересчитываются, т.е. более-менее продумано. А вот какие обоснования есть у вас настолько усложнять одну из подзадач системы - непонятно.
MAYAKOV_SV При открытии формы с редактированием адреса к кладру обращения не происходит. И что, это большое преимущество? Если оператор влез в форму редактирования, то обращаться к БД все равно придется. Рано или поздно.
...
Рейтинг: 0 / 0
КЛАДР, улучшение скорости запросов
    #36947767
MAYAKOV_SV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Senya_L,
то что я писал - это не мое изобретение. Я в рабочем проекте видел это все.
Senya_LИ что, это большое преимущество? Если оператор влез в форму редактирования, то обращаться к БД все равно придется. Рано или поздно.
Ну как я понял, все началось вот с этого:
zvezda_t
тогда вновь открывается форма ввода адреса с использованием кладра, но эта форма грузиться очень долго , потому что адреса извлекаются по ранее сохранённому коду

Из этого я понял, что у нее все время при открытии формы каждый раз грузятся данные из КЛАДР.
Преимущество такое, что если оператору вдруг надо будет поменять всего лишь номер квартиры, то зачем лишнии загрузки, тормозящие работу программы?

Надо, к примеру, сменить улицу:
- оператор жмет кнопку
- выполняется запрос к КЛАДР с учетом предыдущих выбранных реквизитов
- появляется форма со списком улиц, к примеру, данного города
- оператор выбирает улицу, нажимает кнопку OK
- в таблице <АДРЕСА> прописываются значения в поля: <КОД УЛИЦЫ>, <НАИМЕНОВАНИЕ УЛИЦЫ>

И все по такому принципу. Нужен отчет выдать - имена атрибутов (район, улица,...) берутся из <АДРЕСА>, а не из кладр. Нужно поменять адрес - берем коды из таблицы <АДРЕСА> и выдаем форму со списком из кладр.

Вот я и решил, что все проблемы в организации работы формы.

Ну, это один из способов.
...
Рейтинг: 0 / 0
КЛАДР, улучшение скорости запросов
    #36947804
Senya_L
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MAYAKOV_SVИз этого я понял, что у нее все время при открытии формы каждый раз грузятся данные из КЛАДР.Это проблема кривого клиентского приложения. Это не повод всю схему данных ставит с ног на голову.
...
Рейтинг: 0 / 0
КЛАДР, улучшение скорости запросов
    #36998175
Paco
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dim2000zvezda_tВ приложении используются запросы, вида:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
//выбираем районы и города относящиеся непосредственно к региону	
mssql_query("SELECT * FROM dbo.kladr WHERE
((left(CODE,2) ='$region' and right(CODE, 8) = '00000000') 
OR
(left(CODE,5) ='".$region."000' and right(CODE, 5) = '00000')
OR
(left(CODE,8) ='".$region."000000' and right(CODE, 2) = '00'))
AND CODE<>'".$region."00000000000' ORDER BY name")

Абзац... Автора выгнать, КЛАДР распилить по уровням, выборки делать с помощью BETWEEN.

zvezda_tЗаранее огромное спасибо!
Не за что .

Что значит распилить по уровням?
И как в таком случае делать выборки с помощью between?! Это же диапазон записей.
...
Рейтинг: 0 / 0
10 сообщений из 35, страница 2 из 2
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / КЛАДР, улучшение скорости запросов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]