Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.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
Mysql 如何在delphi中转换为查询_Mysql_Delphi - Fatal编程技术网

Mysql 如何在delphi中转换为查询

Mysql 如何在delphi中转换为查询,mysql,delphi,Mysql,Delphi,问题是如何将下面的行转换为查询 找到:=BookingContainer.Locate'no_container',ebContainer.Text,[] 我不知道您使用的数据集是什么,但类似的东西可以在数据库中搜索 procedure TGateScanForm.ebContainerKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); var Found: Boolean; begin if Key = VK_R

问题是如何将下面的行转换为查询

找到:=BookingContainer.Locate'no_container',ebContainer.Text,[]


我不知道您使用的数据集是什么,但类似的东西可以在数据库中搜索

procedure TGateScanForm.ebContainerKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
var
  Found: Boolean;
begin
  if Key = VK_RETURN then
  begin
    ebContainer.ValidateEdit(True);
    if not BookingContainer.Active then BookingContainer.Open;

    Found:= BookingContainer.Locate('no_container', ebContainer.Text, []);

    if Found then
    begin
      no_booking:= BookingContainer.FieldByName('no_booking').Value;
      no_bc11:= BookingContainer.FieldByName('no_bc11').Value;
      no_container:= BookingContainer.FieldByName('no_container').Value;
      statCont:= BookingContainer.FieldByName('status_container').Value;
      statBooking:= BookingContainerstatus.Value;
      bProses.Enabled:= True;
      Key := VK_TAB;
    end
    else
    begin
      bProses.Enabled:= False;
      BookingContainer.Close;
      ShowMessage('Nomor Container tidak ditemukan');
    end;
  end;
end;

如果我理解正确,您可以使用:

BookingContainer.Close;
BookingContainer.SQL.Text := 'SELECT * FROM Table WHERE no_container= :no_container';
BookingContainer.Parameters.ParamByName('no_container').Value := ebContainer.Text;
BookingContainer.Open;
function Found(S : string) : boolean;
begin
  try
    **Unsafe code:**

    MyQuery.SQL :=  Format('SELECT NO_CONTAINER FROM TABLE_BookingContainer 
       WHERE NO_CONTAINER = ''%s''',[S]);

    **Safe code:**

    MyQuery.SQL := 'SELECT NO_CONTAINER FROM TABLE_BookingContainer 
       WHERE NO_CONTAINER = :p);
    MyQuery.Params.ParamByName('p').AsString = s;


    MyQuery.Open;

    result := MyQuery.FieldByName('NO_CONTAINER').Value <> null;
  finnaly
    MyQuery.Close;
  end;
end;

您想查询什么?什么是BookingContainer?BookingContainer是zeos组件有zqueryYou知道如果输入例如1'会发生什么;放置台无容器;在编辑框中选择“1”@TLama我非常了解SQL注入。我还知道如何保护服务器端的数据库。太好了。那你为什么写这篇文章呢?谢谢你的评论谢谢你的评论
....
if Found(ebContainer.Text) then
  .......