火神中间件的一些用法
<h3>打开数据集:</h3>
<pre><code class="language-delphi">FireQuery1.close;
FireQuery1.DataInfo.SQL.Text := 'Select * from bArea';
if FireQuery1.OpenData then
begin
end
else
ShowMessage(Firequery1.DataInfo.ErrMsg);</code></pre>
<h3>保存数据到服务器</h3>
<p>对于单表来说,使用下面的方法:
有两项必须设置:</p>
<pre><code class="language-delphi">DataInfo.TableName :='bArea'; //表名
DataInfo.PrimaryKey :='Id'; //主键</code></pre>
<h3>问题解答:</h3>
<h4>1.如何获取一个GUID:</h4>
<pre><code class="language-delphi">function TFireConnection.GetGUID:String;</code></pre>
<h4>2.如何获取服务器时间:</h4>
<pre><code class="language-delphi">function TFireConnection.GetServerTime:TDateTime;</code></pre>
<h4>3.如何获取整型ID(雪花id):</h4>
<pre><code class="language-delphi">function TFireConnection.GetInt64:Int64;</code></pre>
<h4>其他的一些常用方法:</h4>
<pre><code class="language-delphi">//打开数据
function OpenData(Sender:TObject):Boolean;overload;
function OpenData(QOneOpenData:pOneOpenData;lData:TFDMemTable;var QErrMsg:string):Boolean;overload;
function OpenDataJson(Sender:TObject):Boolean;
procedure OpenDataAsyn(Sender:TObject;QCallBack:TProc&lt;Boolean,string&gt;);
//QAsyn异步打开数据
function OpenDatas(QObjectList: TList&lt;TObject&gt;;var QErrMsg:string;QOutJson:Boolean=False):Boolean;overload;
procedure OpenDatasAsyn(QObjectList: TList&lt;TObject&gt;;QCallBack:TProc&lt;Boolean,string&gt;);
function OpenDatasA(QOpenDatas: array of TObject;var QErrMsg:string):Boolean;overload;
function OpenDatasB(QOneOpenDataList:TList&lt;pOneOpenData&gt;;QDataList:TList&lt;TFDMemTable&gt;;var QErrMsg:string):Boolean;overload;
//保存数据
function SaveData(Sender:TObject):Boolean;
function SaveDatas(QObjectList: TList&lt;TObject&gt;;var QErrMsg:string):Boolean;overload;
function SaveDatas(QObjectArray: array of TObject;var QErrMsg:string):Boolean;overload;
function SaveDataAll(QObjectArray: array of TObject;var QErrMsg:string):Boolean;overload;
function SaveDataAll(QObjectList: TList&lt;TObject&gt;;var QErrMsg:string):Boolean;overload;
//执行存储过程
function ExecStored(Sender:TObject):Boolean;
function QueryStored(Sender:TObject):Boolean;
function ExecQuerySQL(Sender:TObject):Boolean;
//执行DMLSQL语句(insert,update,delete)
function ExecDML(Sender:TObject):Boolean;
function ExecDMLs(QObjectList: TList&lt;TObject&gt;;var QErrMsg:string):Boolean;overload;
function ExecDMLs(QRawSQLList: TList&lt;pOneRawSQL&gt;;var QErrMsg:string):Boolean;overload;
//执行脚本(理论上这货什么多能执行,但最好用在执行DDL 比如创建或更改存储过程)
function ExecSciprt(Sender:TObject):Boolean;overload;
function ExecSciprt(QZTCode:string;QScript:string;var QErrMsg:string):Boolean;overload;</code></pre>