如何动态的根据参数的类型设置Query中的参数

linlin 2000-08-31 06:19:00
在一个Query中动态的添加的一个Sql语句,其中包含参数。现要设置这些参数。

手中有的是各个参数的字符形式,例如'name','23','2000.8.31',如何让程序自动得到参数的数据类型,从而根据参数的类型来设置参数(不希望惨的要到数据库中得到某列的数据类型)。

或者是否可以不判断判断各个参数的数据类型,而用Variant类型的变量来设置所有的参数,让delphi自动根据数据库中的类型来采用正确的类型。(在PB中是可以的)


...全文
412 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
alin 2000-09-01
  • 打赏
  • 举报
回复
一、知道数据表中各字段类型
with Query do
Begin
Close;
SQL.Clear;
SQL.Add('Insert Into TableName');
SQL.Add(' (NAME,NUMBER,MYDATE) ');
SQL.Add('VALUES');
SQL.Add( (:NAME,:NUMBER,:MYDATE) ');
ParamByName('NAME').AsString :='name';
ParamByName('NUMBER').AsInteger :=23;
ParamByName('MYDATE').AsDateTime :=StrToDateTime('2000/08/31');
ExecSQL;
end;
二、不知道数据表中各字段类型
With Query do
Begin
Close;
RequestLive :=True;
SQL.Clear;
SQL.Add('SELECT * FROM TableName');
Open;
Append;
//property FieldValues[const FieldName: string]: Variant;
FieldValues['NAME'] :='name';
FieldValues['NUMBER'] :='23';
FieldValues['MYDATE'] :='2000/08/31';
Post;
end;

5,379

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧