TSQLQuery генерирует дополнительные запросы про VIEW

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

TSQLQuery генерирует дополнительные запросы про VIEW

Сообщение jsa » 28.11.2017 13:57:46

Всем здравствовать!
Попробовали перенести проект из Delphi7 в Lazarus и столкнулись с несколькими проблемами.
Программа работает с базой на MS SQL Server 2008 R2
Перенос сделали импортом проекта Delphi , объекты с запросами заменились с TADOQuery на TSQLQuery
Делаются выборки как из обычных таблиц так и из представлений VIEW
Обнаружены странные дополнительные запросы которые отловили в MS SQL Profiler при запросе к VIEW-шкам
Иногда они подвешивают соединение.
Например
Код: Выделить всё
select i.name, i.indid, c.name as col_name,indexproperty(i.id, i.name, 'IsUnique'),
objectproperty(o.id, 'IsPrimaryKey')
from sysindexes i 
join sysindexkeys k on i.id=k.id and i.indid=k.indid 
join syscolumns c on k.id=c.id and k.colid=c.colid 
left join sysobjects o on i.name=o.name and i.id=o.parent_obj
where i.id=object_id('VIEW_PRINT_DOCS') order by k.indid, k.keyno


Получается в случае select-а ко VIEW кормпонента сама формирует такой запрос.

Была идея что может быть она собирает данные для режима редактирования, но установка ReadOnly ситуацию не меняет.
Кто в курсе почему такая вещь не делается в Delphi и делается в компонентах Lazarus ?
И как это выключить?
jsa
постоялец
 
Сообщения: 261
Зарегистрирован: 28.11.2017 13:46:04

Re: TSQLQuery генерирует дополнительные запросы про VIEW

Сообщение jsa » 30.11.2017 05:04:56

Этот вопрос вроде решил.
SQLQuery.UsePrimaryKeyAsKey:=false
jsa
постоялец
 
Сообщения: 261
Зарегистрирован: 28.11.2017 13:46:04


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 21

Рейтинг@Mail.ru