DELPHI SQL语句中使用IN 的变量如何写

SQL语句为select*frompower.check_snwhereserial_numberin(SN);其中SN为变量,为读取的memo1.text的值,我的设想... SQL语句为select * from power.check_sn where serial_number in (SN);其中SN为变量,为读取的memo1.text的值,我的设想是先将txt文件内容读取到memo1中,然后使用上面的语句进行查询,要怎么写
ADOQUERY1.SQL.Text:='select SN,t1.serial_number SMT_SN,pdline_name MI_LINE,out_process_time MI_TIME,SMT_LINE,SMT_TIME from '
+'sajet.g_sn_travel t1 join sajet.sys_pdline t2 on t1.pdline_id=t2.pdline_id join(select t3.serial_number SN,t1.serial_number SMT_SN,pdline_name SMT_LINE,out_process_time SMT_TIME from sajet.g_sn_travel t1,sajet.sys_pdline t2,sajet.g_sn_keyparts t3 '
+'where t1.serial_number=t3.item_part_sn and t1.pdline_id=t2.pdline_id and length( item_part_sn) =12 and t1.process_id=''100008'' and t3.serial_number IN ('+memo1.Text+')) t4 on t1.serial_number=t4.SMT_SN where t1.process_id=''100037'';'
展开
 我来答
吉人有吉事
2012-07-05 · 知道合伙人软件行家
吉人有吉事
知道合伙人软件行家
采纳数:1524 获赞数:4061
毕业于吉林大学,从事软件开发行业10余年,在金融担保,医疗,电子政务领域积累了相当多的经验

向TA提问 私信TA
展开全部
memo1.lines.loadformfile(filepath);
adoquery1.close;
adoquery1.sql.text := ‘
select * from power.check_sn where serial_number in (’ + memo1.text +‘)’;
adoquery1.open;
这里有一个问题,当serial_number是字符串时,需要分词并加上‘’号
HJ_3000
2012-07-05 · TA获得超过563个赞
知道小有建树答主
回答量:1264
采纳率:78%
帮助的人:56.7万
展开全部
关键看你的txt文件内容格式 ,serial_number 类型
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
浩之鹰学习资料
2012-07-05 · 超过10用户采纳过TA的回答
知道答主
回答量:38
采纳率:100%
帮助的人:28.7万
展开全部
ASql : String;
ASql :='select * from power.check_sn where serial_number in ('+memo1.text+')';
adoquery1.sql.text:=ASql;
adoquery1.open;

注意:memo1.text的值,需要用‘,’隔开。
追问
'2B2277TYW9PLG','2B2277TFW9PLG','2B2277TDW9PLG'
格式是这样的,在Toad中查询正常,程序中报字符无效,不知道是什么原因
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式