gpt4 book ai didi

sql - 带有消息 'Syntax error in FROM clause' delphi 的 EOleException

转载 作者:行者123 更新时间:2023-12-03 19:37:27 24 4
gpt4 key购买 nike

您好我正在尝试让 SQL 从用户从列表框中选择的表中进行选择

这是我的代码

activity := cmbActivity.Text; //this is where the user selects a table to choose from
qryStudents.SQL.Text := 'SELECT * FROM :activity WHERE CompNo = :iCompNo'; //error here
qryStudents.Parameters.ParamByName('activity').Value:= activity;
qryStudents.Parameters.ParamByName('iCompNo').Value := iCompNo;
qryStudents.Open;

在 SQL 代码 (:activity) 中的 FROM 之后,我不断收到语法错误
任何帮助将不胜感激

最佳答案

您不能将 select 的 table 部分定义为参数,您需要动态构建 select 语句的该部分。

activity := cmbActivity.Text;
qryStudents.Close;
qryStudents.SQL.Text := 'SELECT * FROM ' + activity + ' WHERE CompNo = :iCompNo';
qryStudents.Parameters.ParamByName('iCompNo').Value := iCompNo;
qryStudents.Open;

:iCompNo OTOH 可以定义为参数,以防止 SQL 注入(inject)。

关于sql - 带有消息 'Syntax error in FROM clause' delphi 的 EOleException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44951549/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com