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

Прошу помощи - работа связанных реляцией browse с MS SQL таблицами

Добавлено: 31 Май 2017, 9:30
alex881
2 таблицы связанные реляцией, обе отображаються в одном окне и при перемещении через browse по первой таблице(Т1) показываються связанные записи второй(Т2). Обе таблицы были файловые, tps. Сейчас (Т2) перенес в MS SQL и заметил что при перемещении по записям (Т1) данные из (Т2) стали отображаться с заметной задержкой.
В процедуре где созданы browse ничего не менял, менял только в словарике тип драйвера (Т2) на MS SQL и типы полей привел в соответствие с MS SQL. Clarion 5.5EE. Шаблоны использую Clarion, не ABC.
В чем может быть причина?

Прошу помощи - работа связанных реляцией browse с MS SQL таблицами

Добавлено: 31 Май 2017, 10:24
Yufil
Хотелось бы видеть описание БД в словаре и на сервере. Менять только тип драйвера и типы полей абсолютно недостаточно.
Возможно, в Словаре есть связь по ключику, а в базе данных - нет. Или в таблицах нет первичных ключей.
Ну и, конечно, пустить трассировку, посмотреть, что там тормозит...

Прошу помощи - работа связанных реляцией browse с MS SQL таблицами

Добавлено: 31 Май 2017, 10:42
alex881
в кларионе вот так
cla.jpg
в sql
sql.jpg

Прошу помощи - работа связанных реляцией browse с MS SQL таблицами

Добавлено: 31 Май 2017, 11:12
gromov
А нафига в SQL БД столько ключей ? Достаточно одного. В 1-й таблице по ID, во второй ID + какой-нибудь ID1 для уникальности.
Связь между таблицами естественно по ID.
Цитата.
Не создавайте ненужные индексы. Помните, каждый индекс ускоряя выборку данных, замедляет добавление/изменение/удаление записей.

Прошу помощи - работа связанных реляцией browse с MS SQL таблицами

Добавлено: 31 Май 2017, 11:18
Yufil
На первый взгляд:
В Кларионе у таблицы нет первичного ключа (Primary). А надо проставить, для SQL - драйверов Клариона это важно, по нему будет определяться текущее положение записи. Остальные ключики не уникальные - не сильно понятно, как по ним идёт фильтрация. В Browse крайне желательно, чтобы ключ для Browse был уникален, иначе будут всякие странные глюки с листанием. В ABC можно добавить поле ID к порядку сортировки, как в Legacy - не знаю. Ну и, конечно, пустить с трассировкой, посмотреть, на чём тормоза происходят.
А нафига в SQL БД столько ключей ? Достаточно одного.

Это разве "Столько"? Если база приличная, то и 20 ключей нормально. Реально ключ связан с Constraint - на каждую связку по ключу, а то и по два.

Прошу помощи - работа связанных реляцией browse с MS SQL таблицами

Добавлено: 31 Май 2017, 11:23
gromov
Для одной таблицы ???

Прошу помощи - работа связанных реляцией browse с MS SQL таблицами

Добавлено: 31 Май 2017, 11:31
gromov
Для данного случая не вижу смысла делать индексы по полям типа STRING, CSTRING и DATE. А SELECT ... ORDER BY для чего ?

Прошу помощи - работа связанных реляцией browse с MS SQL таблицами

Добавлено: 31 Май 2017, 11:54
alex881
для описания реляции в словаре вроде как нужен ключ - ByIPNum
relat.jpg
и затем в browse для фильтрации записей
ext.jpg
ключ уникальный все же есть - ByID
но он в этом browse не используется

Прошу помощи - работа связанных реляцией browse с MS SQL таблицами

Добавлено: 31 Май 2017, 11:56
alex881
select-ы в данной процедуре не использую, старался минимальными изменениями перейти на ms sql, т.е. нативными средствами клариона
в данном случае это шаблон browse

Прошу помощи - работа связанных реляцией browse с MS SQL таблицами

Добавлено: 31 Май 2017, 11:57
alex881
gromov писал(а): 31 Май 2017, 11:12 А нафига в SQL БД столько ключей ? Достаточно одного. В 1-й таблице по ID, во второй ID + какой-нибудь ID1 для уникальности.
Связь между таблицами естественно по ID.
Цитата.
Не создавайте ненужные индексы. Помните, каждый индекс ускоряя выборку данных, замедляет добавление/изменение/удаление записей.
они унаследованы от старой tps таблицы, потом можно будет удалить

Прошу помощи - работа связанных реляцией browse с MS SQL таблицами

Добавлено: 31 Май 2017, 11:59
alex881
я вот подумал, может мне эту зависимую browse удалить и создать заново, может все ж есть какая привязка в шаблонах к файл-драйверу?

Прошу помощи - работа связанных реляцией browse с MS SQL таблицами

Добавлено: 31 Май 2017, 12:12
alex881
alex881 писал(а): 31 Май 2017, 11:59 я вот подумал, может мне эту зависимую browse удалить и создать заново, может все ж есть какая привязка в шаблонах к файл-драйверу?
не, не помогло ;-(

Прошу помощи - работа связанных реляцией browse с MS SQL таблицами

Добавлено: 31 Май 2017, 12:20
kreator
А зачем связанные таблицы в разных системах? Никогда не видел, честно! Возможно в этом косяк, идёт постоянный переконнект и фиг знает ещё что.

Прошу помощи - работа связанных реляцией browse с MS SQL таблицами

Добавлено: 31 Май 2017, 12:29
RaFaeL
MS SQL по сравнению с локальным tps заметно медленнее работает, это не новость, особенно штатные шаблоны, которые под SQL не заточены

Прошу помощи - работа связанных реляцией browse с MS SQL таблицами

Добавлено: 31 Май 2017, 13:07
alex881
kreator писал(а): 31 Май 2017, 12:20 А зачем связанные таблицы в разных системах? Никогда не видел, честно! Возможно в этом косяк, идёт постоянный переконнект и фиг знает ещё что.
не понял вопроса
RaFaeL писал(а): 31 Май 2017, 12:29 MS SQL по сравнению с локальным tps заметно медленнее работает, это не новость, особенно штатные шаблоны, которые под SQL не заточены
мож я тогда и зря заморочился......