Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Delphi Firedac-最好只打开一个查询来添加记录_Delphi_Firedac - Fatal编程技术网

Delphi Firedac-最好只打开一个查询来添加记录

Delphi Firedac-最好只打开一个查询来添加记录,delphi,firedac,Delphi,Firedac,当我只想创建一个FDQuery来添加记录时,有没有一种方法可以构建/打开/创建FDQuery,这样我就可以实际执行插入和追加操作,而不必在数据库中加载当前信息 我发现自己正在做一件可怕的事情,我放置了一个不可能的过滤器,这样我就加载了元数据,但实际上我没有从数据库加载任何内容:/ fQuery.SQL.Text := 'SELECT * FROM MyTable WHERE 1=2'; 但是有了所有firedac的可能性,肯定有比这更好的方法 那么,有没有一种方法可以用元数据而不是数据

当我只想创建一个FDQuery来添加记录时,有没有一种方法可以构建/打开/创建FDQuery,这样我就可以实际执行插入和追加操作,而不必在数据库中加载当前信息

我发现自己正在做一件可怕的事情,我放置了一个不可能的过滤器,这样我就加载了元数据,但实际上我没有从数据库加载任何内容:/

    fQuery.SQL.Text := 'SELECT * FROM MyTable WHERE 1=2';
但是有了所有firedac的可能性,肯定有比这更好的方法

那么,有没有一种方法可以用元数据而不是数据本身打开FDQuery?
(如果您打算建议使用FDTable,请告诉我它是否有更好的性能,以及原因)

您使用的是什么DB manager?是什么阻止您将SQL.Text作为INSERT语句?说到这里,是什么阻止您使用SELECT打开表,然后使用FDQuery的Insert方法(或InsertRecord)?MartynA,在这种情况下,只是我将MSSQL或FIrebird DB连接到软件,并且我希望Firedac处理类型(日期、BLOB等)和查询语法。我想我第一次理解了您的意思,但在您的注释丢失后,您是否只想从数据库(在TDataGrid或类似数据库上)获取表的结构,然后向其追加/插入?或者什么?
其中1=2
是一个错误的选择(至少对于评论中提到的Firebird来说),它执行表的完全自然扫描。您使用的是什么数据库管理器?是什么阻止您只使用SQL。文本是INSERT语句?说到这里,是什么阻止您使用SELECT打开表,然后使用FDQuery的Insert方法(或InsertRecord)?MartynA,在这种情况下,只是我将MSSQL或FIrebird DB连接到软件,并且我希望Firedac处理类型(日期、BLOB等)和查询语法。我想我第一次理解了您的意思,但在您的注释丢失后,您是否只想从数据库(在TDataGrid或类似数据库上)获取表的结构,然后向其追加/插入?或者什么?
其中1=2
是一个错误的选择(至少对于评论中提到的Firebird而言),它会对一个表执行完全自然的扫描。