...
Query: TSQLQuery
...
Query.SQL.Clear;
Query.SQL.Add('INSERT INTO pumps'#13#10 +
'VALUES (NULL, :title, :power)');
Query.ParamByName('title').AsString:= title;
Query.ParamByName('power').AsFloat:= power;
try
Query.ExecSQL;
except
on E: Exception do
begin
ShowMessage(E.Message);
end;
end;
Run Code Online (Sandbox Code Playgroud)
查询通过driver = Sqlite链接到SQLConnection.所有操作都可以正常工作,但是当我尝试将非唯一值插入到具有唯一索引的列中时,我会得到有关值存在的异常.好的,我的代码捕获它并显示消息'列标题不唯一',但在调试器显示异常TWICE之前.当我关闭程序时,内存管理器会告诉内存泄漏,泄漏是:
有可能避免这种情况吗?
UPD:我使用FastMM4来获取详细的日志,下面是关于一个内存泄漏的部分:
A memory block has been leaked. The size is: 68
This block was allocated by thread 0xB18, and the stack trace (return addresses) at the time was:
4068A6 [System.pas][System][@GetMem$qqri][4203] …Run Code Online (Sandbox Code Playgroud)