powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Unidac SQLGenerator
51 сообщений из 51, показаны все 3 страниц
Unidac SQLGenerator
    #39422536
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не могу в справке и в примерах найти, как сгенерировать запросы для таблицы.
Подозреваю, что нужно использовать
Код: pascal
1.
TDBAccessUtils.SQLGenerator(UniQuery1).GenerateSQLforUpdTable(100500 параметров)



здесь есть пример, пытаюсь разобраться
http://forums.devart.com/viewtopic.php?p=80325&sid=1d80499992951ae5af6096aa9e904c8a#p80325
но там зачем-то нужно открывать набор данных О_о

Как-то у FibPlus более понятней и проще.
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422538
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А зачем? Это же внутренний код не для сторонних программистов. У DevArt есть собственная реализация ORM -- EntityDAC. Генерация и всё такое из коробки в пару строк кода.
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422540
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
JaDiА зачем? Это же внутренний код не для сторонних программистов. У DevArt есть собственная реализация ORM -- EntityDAC. Генерация и всё такое из коробки в пару строк кода.
только на входе аццкое говно.
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422541
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
defecatorJaDiА зачем? Это же внутренний код не для сторонних программистов. У DevArt есть собственная реализация ORM -- EntityDAC. Генерация и всё такое из коробки в пару строк кода.
только на входе аццкое говно.
вЫходе
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422542
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JaDi,

ок, пусть внутренний, не трогаем его
тогда как правильно сгенерировать?
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422544
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть десяток однотипных справочников типа "id + name". Не создавать же 10 форм и/или 10 НД.
Пользователь хочет отредактировать справочник типов или операций. Он выбирает, а программа уже генерирует запросы и отображает таблицу.
На всё на это одна форма и один UniQuery.

Странно, что примеров и справки нет.
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422545
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecator,

Сомневаюсь. Как можно испортить элементарные запросы? Селекты да лефт джойны с условиями и сортировка. У меня 90% sql-кода такого. Остальное ORM уже не покроет и надо ручками писать.
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422549
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11,

Тут компоненты не нужны. Делаешь один универсальный справочник, где на входе передаешь имя таблицы и ID для выделения по умолчанию. Можно даже обычный TUniTable вставить, раз все поля одинаковые и нужно редактирование в списке.
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422551
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тогда нужно ещё одно поле: Тип справочника
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422552
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
здесь http://forums.devart.com/viewtopic.php?f=7&t=30602
тоже предлагают использовать TDBAccessUtils.SQLGenerator
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422557
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11,

так не надо ничего генерировать -- выше же написано, что куча однотипных справочников с ID и NAME. Т.е. разница только в имени таблицы:
Код: pascal
1.
DataSet_Items.SQL.Text := Format('SELECT ID, NAME FROM %s ORDER BY NAME', [Self.TableName]);


Или вообще:
Код: pascal
1.
DataSet_Items.TableName := Self.TableName;
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422560
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
При чем здесь имя?
Мне нужно сгенерировать Insert, update, Refresh, Delete запросы.
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422567
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11,

Во-первых, для TTable (TUniTable) никакие запросы генерировать не надо -- компоненты берут на себя все обязанности по работе с базой. Во-вторых, что тебе мешает сделать ОДИН универсальный справочник, подставить туда нужный запрос (см. выше) и при его создании заменять псевдо-таблицу на свою собственную?

Код: pascal
1.
2.
3.
dataset.SQLInsert.Text := ReplaceStr(dataset.SQLInsert.Text, 'FAKE_TABLE', Self.TableName);
dataset.SQLUpdate.Text := ReplaceStr(dataset.SQLUpdate.Text, 'FAKE_TABLE', Self.TableName);
dataset.SQLDelete.Text := ReplaceStr(dataset.SQLDelete.Text, 'FAKE_TABLE', Self.TableName);
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422570
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
JaDidefecator,

Сомневаюсь. Как можно испортить элементарные запросы? Селекты да лефт джойны
лефт джойны вытягивают пол-базы
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422572
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не мешает, но я хочу понять, как правильно использовать SQL Generator

пока получаю AV

Код: pascal
1.
2.
3.
4.
5.
6.
7.
  GenerateSql(Format('select id, name from %s', [sTableName]), qRef);


procedure TfmReference.GenerateSql(const sql: string; UniQuery: TUniQuery);
begin
  UniQuery.sql.Text := sql;
  TDBAccessUtils.SQLGenerator(UniQuery).GenerateSql(TDAParamsInfo.Create(TDAParamInfo), _stInsert, true);
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422573
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
почему людям лень писать простые SQl запросы ?
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422596
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecatorлефт джойны вытягивают пол-базы

Ничего пол базы не вытягивает:
Код: plsql
1.
2.
3.
4.
5.
6.
SELECT 
  t1.*, 
  t2.NAME -- вытянет только NAME со второй таблицы
FROM 
  table1 t1
  LEFT JOIN table2 t2 ON t2.ID = t1.STATUS_ID



Или речь про ORM идет? Дык, там тоже есть специальный режим с задержанной загрузкой, когда связанные данные грузятся лишь по требованию (например, загрузили список заказов, а данные о статусе заказа будут подгружены при обращении к этому полю или список позиций заказа или что-то еще -- всё это можно настроить).
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422601
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
JaDidefecatorлефт джойны вытягивают пол-базы

Ничего пол базы не вытягивает

Inner Join вытягивает только совр\падающие по условию объединения записи,
а Left Join вытянет все записи из таблицы слева, даже если нет совпадающих записей.
Представь, в что в левой таблице миллиард записей, а в правой - всего сотня.
Inner Join вытянет не более сотни записей, а Left Join - весь миллиард
Аналогично для Right Join.
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422604
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecator,

так это ты сам должен строить запросы на данные, которые тебе нужны
и нельзя заменять inner на left
и при чем здесь миллиард? есть же where
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422606
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
X11defecator,

так это ты сам должен строить запросы на данные, которые тебе нужны
и нельзя заменять inner на left
и при чем здесь миллиард? есть же where

в случае Left Join твой Where ляжет на весь кортеж, а в случае Inner Join - только на записи, которые пришли по соединению.
То есть на сотню, а не на миллиард
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422607
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecator,

И что? Если по задаче нам надо вытянуть ВСЕ заказы, значит будут получены ВСЕ записи из таблицы orders:
Код: plsql
1.
2.
3.
4.
5.
6.
SELECT 
  t.*,
  s.NAME AS STATUS_NAME
FROM
  orders o
  LEFT JOIN statuses s ON s.ID = o.STATUS_ID



Если надо будет вытянуть ОДИН заказ -- запрос останется точно таким же с LEFT JOIN, добавится только условие WHERE:
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
SELECT 
  t.*,
  s.NAME AS STATUS_NAME
FROM
  orders o
  LEFT JOIN statuses s ON s.ID = o.STATUS_ID
WHERE
  o.ID = :ID



Более того, именно JOIN-синтаксис и используется во всяких генераторах, т.к. на порядок проще для генерации нежели остальные виды записи типа SELECT * FROM a, b, c.
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422608
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
JaDidefecator,

И что? Если по задаче нам надо вытянуть ВСЕ заказы, значит будут получены ВСЕ записи из таблицы orders:
Код: plsql
1.
2.
3.
4.
5.
6.
SELECT 
  t.*,
  s.NAME AS STATUS_NAME
FROM
  orders o
  LEFT JOIN statuses s ON s.ID = o.STATUS_ID



Если надо будет вытянуть ОДИН заказ -- запрос останется точно таким же с LEFT JOIN, добавится только условие WHERE:
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
SELECT 
  t.*,
  s.NAME AS STATUS_NAME
FROM
  orders o
  LEFT JOIN statuses s ON s.ID = o.STATUS_ID
WHERE
  o.ID = :ID



Более того, именно JOIN-синтаксис и используется во всяких генераторах, т.к. на порядок проще для генерации нежели остальные виды записи типа SELECT * FROM a, b, c.

В первом случае Left лишний, так как судя по второму запросу, статус у заказов быть обязан, поле Not Null.
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422610
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecator,

Даже если статус может быть нулл -- то запрос останется точно таким же. Сначала отработает условие по основной таблице и, если запись под него попадает, будут запрашиваться все остальные. Т.е. в случае одного заказа будет одна строка из таблицы orders и одна строка из таблицы statuses.

Что касается ORM'ов, то там это немного по другому сделано. Точнее, есть оба механизма: либо грузим одним большим запросом сразу все данные, в т.ч. и связанные; либо грузим только основную таблицу, а остальные подтягиваем при необходимости, в т.ч. с использованием кеша.
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422614
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
JaDidefecator,

Даже если статус может быть нулл -- то запрос останется точно таким же. Сначала отработает условие по основной таблице и, если запись под него попадает, будут запрашиваться все остальные. Т.е. в случае одного заказа будет одна строка из таблицы orders и одна строка из таблицы statuses.

тогда зачем Left Join ? Для того, чтобы было ?
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422615
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecator,

Потому что так наглядно и просто... универсальная запись запросов, так сказать. А какой вариант у тебя (например, заказ со статусом, как выше)?
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422617
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
JaDidefecator,

Потому что так наглядно и просто... универсальная запись запросов, так сказать. А какой вариант у тебя (например, заказ со статусом, как выше)?
Inner Join, это же очевидно
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422624
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecator,

Во-первых, inner join не вернет запись с заказом, если у него статус пустой. Во-вторых, если статус всегда есть, то планы запросов аналогичные/похожие будут (что у left join, что у inner join).

Так что по определению такие запросы (inner join) нельзя использовать в проектах -- есть большая вероятность нарваться на трудно определяемые баги, как-то "пропажа" записей, если вдруг начали менять логику базы (банально решили записывать ID без реальных ключей и случайно что-то удалили в сторонней таблице).
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422626
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
JaDidefecator,

Во-первых, inner join не вернет запись с заказом, если у него статус пустой. Во-вторых, если статус всегда есть, то планы запросов аналогичные/похожие будут (что у left join, что у inner join).

Так что по определению такие запросы (inner join) нельзя использовать в проектах -- есть большая вероятность нарваться на трудно определяемые баги, как-то "пропажа" записей, если вдруг начали менять логику базы (банально решили записывать ID без реальных ключей и случайно что-то удалили в сторонней таблице).
Чтобы записи не пропадали, есть foreign key, а если записи пропадают, значит, целостность БД под угорозой.
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422633
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecator,

Бывают ситуации, когда невозможно поставить ключи. Например, необходимо хранить ссылку на сторонний документ (пример, документ-основание). И таких документов может быть большое количество и в разных таблицах. Но ссылку надо где-то хранить.
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422634
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecator,

Да и банальное -- есть ссылка на документ-основание, а может и нет (т.е. null) -- и надо вывести номер и дату этого документа в дополнение к основной таблице. Как будет такой запрос записан без left join'а? :-)
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422635
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
JaDidefecator,

Бывают ситуации, когда невозможно поставить ключи. Например, необходимо хранить ссылку на сторонний документ (пример, документ-основание). И таких документов может быть большое количество и в разных таблицах. Но ссылку надо где-то хранить.

Это зависит от уровня опыта проектировщика структуры БД.
А в твоём конкретном примере проектировщика надо увольнять и через суд требовать компенсацию с его рукоблудия.
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422648
schi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JaDidefecator,

Бывают ситуации, когда невозможно поставить ключи. Например, необходимо хранить ссылку на сторонний документ (пример, документ-основание). И таких документов может быть большое количество и в разных таблицах. Но ссылку надо где-то хранить.

Тогда это не база данных, а свалка данных. И на основании этого опыта давать глобальные рекомендации я бы постеснялся.
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39422654
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
основной вопрос не решён
а тему зафлудили
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Unidac SQLGenerator
    #39987110
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11
Код: pascal
1.
TDBAccessUtils.SQLGenerator(UniQuery).GenerateSql(TDAParamsInfo.Create(TDAParamInfo), _stInsert, true);



есть проблема с утечкой памяти, скорей всего из-за TDAParamsInfo.Create(TDAParamInfo). Т.е. оно в момент генерации создается, но нигде, как я понял, не уничтожается

Как это правильно утилизировать?


вот текст ошибки:
Unexpected Memory Leak
---------------------------
This application has leaked memory. The leaks ordered by size are:
22: 2 x UnicodeString
30: 4 x CRAccess.TDAParamsInfo, 7 x UnicodeString, 2 x Unknown
38: 1 x UnicodeString
46: 4 x System.Generics.Collections.TList<System.Classes.TCollectionItem>
54: 19 x CRAccess.TDAParamInfo, 1 x UnicodeString
94: 2 x Unknown

Как только я комментирую вызов процедуры генерирования SQL, то ошибки Unexpected Memory Leak нету.
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39987163
Фотография DarkMaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11,

Код: pascal
1.
2.
3.
4.
5.
6.
7.
var ParamInfo:TDAParamInfo;

ParamInfo:=TDAParamsInfo.Create(TDAParamInfo);

TDBAccessUtils.SQLGenerator(UniQuery).GenerateSql(ParamInfo, _stInsert, true);

ParamInfo.Free;



Так?
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39987168
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну так и я могу... а это правильно?
ведь после генерации запросов сам датасет будет же использоваться
вдруг из-за такого кода что-то пойдет не так?
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39987170
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я задал вопорос и на форуме тех.поддержки, но, как показывает практика, они там отвечают раз в неделю или вообще раз в месяц.
У DevART тех.поддержка стала отвратительная. При том, что компоненты их весьма недешевые.
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39987216
Фотография DarkMaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11,

Значит надо в потроха лезть и смотреть, почему этот ParamsInfo остается (и остается ли?) висеть в подвешенном состоянии. Или не использовать генератор.
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39987238
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
они не дают исходников, вернее за исходники нужно платить в 2 раза бОльшую цену
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39987274
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
X11
они не дают исходников, вернее за исходники нужно платить в 2 раза бОльшую цену

ой, божечки-божечки, а то ты на ру-доске не зарегистрирован
я тебя там очень часто вижу )
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39987348
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecator, нету :(
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39987357
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DarkMaster
Так?


Перепроверил. Запрос генерируется, ошибок пока что не обнаружил.
Пока оставлю этот вариант.
Спасибо.
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39987423
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Капец... Генератор берет в оборот readonly-поля и добавляет их в Insert/Update запросы
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39987448
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
X11
Капец... Генератор берет в оборот readonly-поля и добавляет их в Insert/Update запросы


а почему ты запросы руками не пишешь ?
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39987460
Фотография DarkMaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Такой генератор я себе как-то делал. Лет 20 назад :) Типа экономил время при написании запросов, если таблица развесистая. Помнится мой еще и исходник куска кода генерил (заточенного под IBObjects).
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39987470
L_argo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Н-р в ФайрДАКе можно указать имя таблицы и ее ключевых полей. Чтобы генератор не ошибся в случае сложного селекта.

При этом нельзя переименовывать алиасами ключевые поля.
А для заранее неизвестного запроса нужно, чтобы имя таблицы было в одной строке с FROM, иначе не найдет. :)
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39987486
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecator,

1. ну очень много полей. (программа по работе с разного рода объявлениями).
2. генераторы реально упрощают работу.
3. зачем писать 3-5 на 99% одинаковых запросов.
4. не всегда угадаешь на стадии разработки - какой запрос будет в тот или иной момент.
5. на форме можно держать 1-2 датасета вместо 5-10.
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39987493
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Самый лучший генератор был в FibPlus.
В UniDAC перед генерированием нужно обязательно:
- отключить SmartFetch;
- открыть датасет.

В UniDAC некоторые readonly-поля всё равно попадают update/insert сгенерированные запросы.

Уважаемые разработчики UniDAC, возьмите функционал/идеи из FibPlus и сделайте нормальные, человеческие генераторы.
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39992990
Фотография devart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Метод GenerateSql изначально разрабатывался для внутреннего использования. Он вызывается при выполнении DML-операций в наших датасетах и "заточен" исключительно под эти операции. Мы вообще не рассматривали возможность использования этого метода пользователями.
Да, в случае сложных SELECT определённые недочёты в его работе могут быть, но в 99.9% случаев это перекрывается использованием свойств SQLInsert/SQLUpdate, которые специально предназначены для таких случаев.
Что касается ситуации, когда в автоматически сгенерированный запрос попадают readonly-поля: это, безусловно, может быть нашей ошибкой. Обратитесь, пожалуйста, на наш форум с примером запроса, на котором возникает такое поведение, и мы постараемся разобраться в ситуации.
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #39992996
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да у вас там на форуме раз в месяц отвечают.
Техподдержка скатилась ниже плинтуса, а цена на компоненты не скатилась.
...
Рейтинг: 0 / 0
Unidac SQLGenerator
    #40050957
Фотография devart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мы улучшили автоопределение computed полей при генерации update-запросов для датасета. Новый билд UniDAC 8.4.1, включающий данное улучшение, уже доступен для скачивания.
...
Рейтинг: 0 / 0
51 сообщений из 51, показаны все 3 страниц
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Unidac SQLGenerator
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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