解决方案 »
- 怪事!ADOQuery的Eof、Bof都是True,RecordCount却是83?
- 如何一次过把一个数据库里面所有表的数据清空?!!!
- 在DELPHI7中,如何使用TApplication.OnIdle事件事件?如何设置空闲时间idletimer的长短?在线等
- socket连接solaris上的oracle数据库出现死机
- 高分求助:在dbgrid控件中的单击问题??不够再加
- 散分,凡是认识我的干妹妹都来领分
- 请问:如何向文本文件中插入一条记录....在线等待,高分相赠
- 关闭程序调用的dll
- 橡皮条技术.谁有这方面的资料,50分送给你!
- 请问关于getlogicaldrivestrings的api用法
- TreeView上的一个节点拖下来,放到GroupBox里面
- Delphi里面十六进制图片的问题
但是写SQL语句时需要一定的规则,不然会截取错误,比如截取as前面和逗号(,)后面的字符等
type
TRec = record
TableName, RealFieldName, FieldAlias: string;
end;
const
S: array [0..3] of TRec = (
(TableName: 'table1'; RealFieldName: 'table1column1'; FieldAlias: '学号'),
(TableName: 'table1'; RealFieldName: 'table1column2'; FieldAlias: '姓名'),
(TableName: 'table2'; RealFieldName: 'table2column1'; FieldAlias: '学号'),
(TableName: 'table2'; RealFieldName: 'table2column2'; FieldAlias: '姓名')
);
var
I: Integer;
begin
for I := Low(S) to High(S) do
if (TableName = S[I].TableName) and (FieldAlias = S[I].FieldAlias) then
begin
Result := S[I].RealFieldName;
Exit
end; Result := FieldAlias
end;
你是说人为的设置Grid的Title-Caption属性,然后用Caption作为查询条件?可是Grid中的列是根据数据集中的数据动态生成的
感谢你费这么打劲写代码,这样写比较死,不太灵活。Grid是动态创建的。
通过表名可以获得相应的字段名,Grid标题有Title,对应字段名就是Fields
通过循环(这里可能要用嵌套循环)进行校验,对应标题相同的就取字段名出来与之对应。代码就更简单了,只要思路清晰了,代码也就没什么神奇啦!