一個簡單的sql語句問題(100分)

  • 主题发起人 wuxiuling
  • 开始时间
W

wuxiuling

Unregistered / Unconfirmed
GUEST, unregistred user!
我想定義一個過程﹐帶一個參數,如下﹕
procedure Tmainform.betweentime (var letter :string) ;
begin
with adoquery1 do
begin
close;
sql.clear;
sql.add('select * from 訂單明細表 a');
sql.add('where a.批號 like'+'letter'+'%');
open;
end;
end;

我想查詢條件是: 批號 像 letter%
請問sql.add('where a.批號 like'+'letter'+'%');怎么寫﹖
 
請問sql.add('where a.批號 like'+'letter'+''''+'%'+'''');怎么寫﹖

 
sql.add('where a.批號 like'+#39+letter+'%'+#39);
 
sql.add('where a.批號 like'+#39+'letter'+'%'+#39);
或sql.add('where a.批號 like '''+'letter'+'%''');
 
你的letter是一个变量吗,如果是变量的话,就要用参数传递了。如果不是的话,你的语句应该没有问题。
sql.add('select * from 訂單明細表 a');
sql.add('where a.批號 like'+'letter'+'%');
带参数:
sql.add('select * from 訂單明細表 a');
sql.add('where a.批號 like :letter'+'%');


 
'where a.批號 like ''%'+letter+'%'''
 
sql.add('select * from 訂單明細表 a');
sql.add('where a.批號 like'+quotedstr(letter+'%'));
 
謝謝你們。問題已經解決了。
 
顶部