Delphi TadoQuery-参数类型转换

时间:2018-07-18 08:41:02

标签: delphi type-conversion tadoquery

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

我是Delphi的新手,所以要理解如何使用UnicodeStringAnsiStringString并不容易。另外,当我在任何地方都不使用它时,我也不明白为什么会说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)

0 个答案:

没有答案