vital
а какие действия ты с ним производишь ?
Модератор: Модераторы
procedure TForm1.Button1Click(Sender: TObject);
var vNum:integer;
begin
JvUIBDataBase1.Connected:=True;
for vNum := 0 to 10000 do
with TFBDataSet.Create(self) do
try
DataBase := JvUIBDataBase1;
Transaction := JvUIBTransaction1;
SQLSelect.Text:='select 1 as test from rdb$database';
Open;
Close;
JvUIBTransaction1.Commit;
finally
Free;
end;
JvUIBDataBase1.Connected:=False;
end;
for vNum := 0 to 10000 do
with TFBDataSet.Create(self) do
try
finally
Free;
end;
"An unexpected memory leak has occurred. The unexpected small block leaks are:
1-12 bytes: Stringx1
13-20 bytes: Stringx2
21-28 bytes: Stringx1
29-36 bytes TFieldHeaderx2"
SELECT * FROM ROUTE
WHERE ID_DIR = :ID
INSERT INTO ROUTE(ID, ID_DIR, ROUTE_INDEX, TAR_ZONE )
VALUES(:ID, MAS_ID, ROUTE_INDEX, TAR_ZONE)
SELECT ID AS DETAIL_ID, ... FROM ROUTE
WHERE ID_DIR = :ID
INSERT INTO ROUTE(ID, ID_DIR, ROUTE_INDEX, TAR_ZONE )
VALUES(:DETAIL_ID, :ID, ROUTE_INDEX, TAR_ZONE)
vital писал(а):В FIB+ таковых, вроде, нет
Сергей Смирнов писал(а):Префиксы не поддерживаются. Писать так:
- Код: Выделить всё
SELECT ID AS DETAIL_ID, ... FROM ROUTE
WHERE ID_DIR = :ID
чтобы поля с именем ID не было. Тогда инсерт будет:
- Код: Выделить всё
INSERT INTO ROUTE(ID, ID_DIR, ROUTE_INDEX, TAR_ZONE )
VALUES(:DETAIL_ID, :ID, ROUTE_INDEX, TAR_ZONE)
Как другой вариант - переименовать ID в мастере.
Также надо установить свойство деталь-датасета poFillEmptyEPFromParams=True
Это не префикс, а псевдоним поля - см. SELECT-запрос. Никакие префиксы не поддерживаются в принципе.vital писал(а):Спасибо! Всё работает. Пока без видимых глюковА где определён префикс DETAIL_? В исходниках UIB/FBDataSet чего-то не нашёл
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6