Delphi,SqlServer,ADO,Delphi用 ADOQuery连接sqlServer数据库查询数据,利用参数查询使用方法
DM创建查询,类TAdoQuery:QR_PARAMETERS_010
设置属性:
ParamCheck=True
Parmeters:today1,today2。
Sql语句:
select groupno,partNo,revision
from parameters
where CONVERT(varchar, startDate, 112)<= :Today1
and CONVERT(varchar, stopDate, 112)> :Today2
group by groupno,partNo,revision
程序调用:
with DM.QR_PARAMETERS_010 do begin
Close;
Parameters.ParamByName('TODAY1').Value := X_pOraDate ;
Parameters.ParamByName('TODAY2').Value := X_pOraDate ;
Open;
First;
while not Eof do begin
pGroup_no :=fieldByName('groupno').AsString;
pPart_no := fieldByName('partno').AsString;
pRevision := fieldByName('Revision').AsString;
inc(pI);
if pPart_no <>'' then begin
with dm.QI_ENPARAMPM_010 do begin
Close;
ParamByName('group_no').AsString :=pGroup_no;// DM.QR_PARAMETERS_010.fieldByName('groupno').AsString;
ParamByName('part_no').AsString := pPart_no;//DM.QR_PARAMETERS_010.fieldByName('partno').AsString;
ParamByName('revision').AsString := pRevision;
ParamByName('ent_when').AsString := X_pOraDate+X_pOraTime;
ParamByName('ent_who').AsString := X_pUserID;
//ShowMessage(SQL.Text);
ExecSQL;
end;
end;
Next;
end;
end;
附:SqlServer中将日期格式数据转化为字符串:
-- 常用格式示例:
SELECT CONVERT(varchar, GETDATE(), 120); -- 2023-10-27 14:30:05 (yyyy-mm-dd hh:mi:ss)
SELECT CONVERT(varchar, GETDATE(), 23); -- 2023-10-27 (yyyy-mm-dd)
SELECT CONVERT(varchar, GETDATE(), 112); -- 20231027 (yyyymmdd)
SELECT CONVERT(varchar, GETDATE(), 111); -- 2023/10/27 (yyyy/mm/dd)
SELECT CONVERT(varchar, GETDATE(), 108); -- 14:30:05 (hh:mm:ss)
Tag: Delphi SqlServer ADO