0

我将网页中的 Jquery 和 Ajax 参数发送到我的 Delphi Web 服务器。这些参数将在选择中使用,但是一旦我到达TADOQ.Open;我就会得到一个异常,其中包含代码部分下方的消息。

我是 Delphi 的新手,所以我很难理解如何使用UnicodeString,AnsiStringString. 我也不明白为什么它说double,当我不在任何地方使用它时。

有没有解决问题的简单方法?(代码小,易于理解)

编辑:调用前添加流程SearchChosen();

KoyoWebSqlReader:=CKoyoWebSqlReader.Create;
KoyoWebSqlReader.OpenConnection;

Response.ContentType:='application/json';
Txt:=KoyoWebSqlReader.SearchChosen(
  StrToInt(SplitString(Request.ContentFields[0], '=')[1]),
  StrToDateTime(SplitString(Request.ContentFields[1], '=')[1])
).toJsonString;
Response.Content:=Txt;

KoyoWebSqlReader.CloseConnection;

// -----

function CKoyoWebSqlReader.SearchChosen(TicketNumber:Integer; Start:TDateTime):CKoyoMeasurement;
var Search:TADOQuery;
var Measurement:CKoyoMeasurement;
begin
    Measurement:=CKoyoMeasurement.Create;

    Search:=TADOQuery.Create(nil);
    Search.Connection:=Connection;
    Search.SQL.Clear;
    Search.SQL.Text:=
    'SELECT * FROM Measurements WHERE TicketNumber = :TicketNumber AND Start = :Start;';
    Search.Parameters.ParamByName('TicketNumber').Value:=TicketNumber;
    Search.Parameters.ParamByName('Start').Value:=Start;

    try
    Search.Open;
    // Fill Measurement
    except on EX:Exception do
    begin
    // Log Exception
    end;
end;
Search.Close;
Result:=Measurement;
end;

类型变体 (UnicodeString) 无法转换为 (Double)

4

0 回答 0