zoukankan      html  css  js  c++  java
  • 中间件的一些方法定义

    function TServerMethods1.ExecuteSql(const sql: String): Boolean;
    var
    d: TfrmDB;
    begin
    d := DBPool.Lock;
    if Assigned(d) then
    begin
    try
    try
    d.qry.Close;
    d.qry.sql.Clear;
    d.qry.sql.Text := sql;
    d.qry.ExecSQL;
    Result := true;
    except
    on e: Exception do
    begin
    Result := false;
    Log.WriteLog('TServerMethods1.ExecuteSql ' + e.Message);
    end;
    end;
    finally
    DBPool.Unlock(d);
    end;
    end
    else
    begin
    Result := false;
    end;
    end;

    function TServerMethods1.QuerySql(const sql: String): OleVariant;
    var
    d: TfrmDB;
    begin
    d := DBPool.Lock;
    if Assigned(d) then
    begin
    try
    try
    d.qry.Close;
    d.qry.sql.Clear;
    d.qry.sql.Text := sql;
    d.qry.Open;
    Result := d.dsp.Data;
    except
    on e: Exception do
    begin
    Result := null;
    Log.WriteLog('TServerMethods1.QuerySql ' + e.Message);
    end;
    end;
    finally
    DBPool.Unlock(d);
    end;
    end
    else
    begin
    Result := null;
    end;
    end;

    function TServerMethods1.QuerySql2(const sql: string): TFDJSONDataSets;
    var
    d: TfrmDB;
    begin
    d := DBPool.Lock;
    if Assigned(d) then
    begin
    try
    try
    d.qry.Close;
    d.qry.sql.Clear;
    d.qry.Open(sql);
    Result := TFDJSONDataSets.Create;
    TFDJSONDataSetsWriter.ListAdd(Result, d.qry);
    except
    on e: Exception do
    begin
    Result := nil;
    Log.WriteLog('TServerMethods1.QuerySql2 ' + e.Message);
    end;
    end;
    finally
    DBPool.Unlock(d);
    end;
    end
    else
    Result := nil;
    end;

    function TServerMethods1.SaveData(const tableName: String;
    delta: OleVariant): Boolean;
    var
    d: TfrmDB;
    errCnt: Integer;
    begin
    d := DBPool.Lock;
    if Assigned(d) then
    begin
    try
    try
    d.qry.Close;
    d.qry.sql.Clear;
    d.qry.sql.Text := 'select * from ' + tableName + ' where 1=2';
    d.qry.Open;
    d.dsp.ApplyUpdates(delta, 0, errCnt);
    if errCnt = 0 then
    Result := true
    else
    Result := false;
    except
    on e: Exception do
    begin
    Result := false;
    Log.WriteLog('TServerMethods1.SaveData ' + e.Message);
    end;
    end;
    finally
    DBPool.Unlock(d);
    end;
    end
    else
    begin
    Result := false;
    end;
    end;

    function TServerMethods1.SaveData2(const tableName: string;
    delta: TFDJSONDeltas): Boolean;
    var
    d: TfrmDB;
    LApply: IFDJSONDeltasApplyUpdates;
    begin
    d := DBPool.Lock;
    if Assigned(d) then
    begin
    try
    try
    d.qry.Close;
    d.qry.sql.Clear;
    d.qry.sql.Text := 'select * from ' + tableName + ' where 1=2';
    d.qry.Open;
    LApply := TFDJSONDeltasApplyUpdates.Create(delta);
    LApply.ApplyUpdates(tableName, d.qry.Command);
    Result := LApply.Errors.Count = 0;
    except
    on e: Exception do
    begin
    Result := false;
    Log.WriteLog('TServerMethods1.SaveData2 ' + e.Message);
    end;
    end;
    finally
    DBPool.Unlock(d);
    end;
    end
    else
    Result := false;
    end;

  • 相关阅读:
    CSS日食与太阳碰撞
    CSS日食与太阳碰撞
    CSS日食与太阳碰撞
    CSS日食与太阳碰撞
    CSS日食与太阳碰撞
    CSS日食与太阳碰撞
    CSS日食与太阳碰撞
    CSS日食与太阳碰撞
    CSS日食与太阳碰撞
    5个最顶级jQuery图表类库插件-Charting plugin
  • 原文地址:https://www.cnblogs.com/hnxxcxg/p/4050461.html
Copyright © 2011-2022 走看看