1。如果是用_recordset对象:
var rs:_recordset;
rs.fields.item['xxx'].value; //返回的是variant
2。如果用aodquery或adotable,
adoquery.fieldbyname('xxx').asstring;
adoquery.fieldbyname('xxx').asfloat;
...
var rs:_recordset;
rs.fields.item['xxx'].value; //返回的是variant
2。如果用aodquery或adotable,
adoquery.fieldbyname('xxx').asstring;
adoquery.fieldbyname('xxx').asfloat;
...
解决方案 »
- 要实现如下要求要怎样写代码?
- delphi如何判断端口是否被占用
- 关于ping问题!
- 数字签名不起作用 ,这是为什么?线上等回答就给分。
- 请 zjcxc(: 邹建 :) 拿分
- 为什么我拿出100分给大家拜年的帖子给删除了,并且扣除我的信誉分?我实在是不明白。请版主给我个合理的解释
- 問前輩們一個問題:寫程序與寫文檔是如何同步的....,100分
- 如何制作delphi的安装程序???
- 为何我把控件自动安装以后,并且在窗口加入控件编译,编译器说找不到那个 .pas 文件
- 用面向对象的方法做mis,到底应该怎样,我晕了
- 请教封装企业逻辑的问题?
- 如何取得一个文本框所在背景的颜色,并赋给文本框的color,让其看上去只有文字,没有边框
if (not adoQry_SQL.Fields.Fields[i].IsNull) then begin
tmpSQL1:=tmpSQL1+adoQry_SQL.Fields.Fields[i].FieldName+',';
if (adoQry_SQL.Fields.Fields[i].ClassName='TStringField') then begin
tmpStr:=StringReplace(adoQry_SQL.Fields.Fields[i].AsString,chr(39),'’',tmp);
tmpSQL2:=tmpSQL2+chr(39)+tmpStr+chr(39)+',';
updateStr:=updateStr+adoQry_SQL.Fields.Fields[i].FieldName+'='+chr(39)+tmpStr+chr(39)+',';
end
else if (adoQry_SQL.Fields.Fields[i].ClassName='TBCDField') then begin
tmpSQL2:=tmpSQL2+adoQry_SQL.Fields.Fields[i].AsString+',' ;
updateStr:=updateStr+adoQry_SQL.Fields.Fields[i].FieldName+'='+adoQry_SQL.Fields.Fields[i].AsString+',';
end
else if (adoQry_SQL.Fields.Fields[i].ClassName='TDateTimeField') then begin
tmpDate:='to_date('''+formatdatetime('YYYY-MM-DD hh:mm:ss ',adoQry_SQL.Fields.Fields[i].Asdatetime)+chr(39);
tmpDate:=tmpDate+','+chr(39)+'YYYY-MM-DD HH24:MI:SS'+chr(39)+'),';
tmpSQL2:=tmpSQL2+tmpDate;
updateStr:=updateStr+adoQry_SQL.Fields.Fields[i].FieldName+'='+tmpDate+',';
end;
end;
end;当时我是为了动态生成insert和update 的sql语句用的,想必对这个问题也是很好的解答。
环境:delphi5、oracle8