我使用的是做一个查询管理在Delphi中ADO
,我需要知道将被查询返回的所有领域,确实无论多么复杂,多么加入他们都会有。 我想调用一个函数,返回给我,说会在一个特定的查询返回的所有字段,字段的信息,如表什么是这个领域。
在与PHP的MySQL,我有命令mysql_field_table
,在此命令我通过结果对象和领域的指数和该命令我回到表名。
嗯,这是我的梦想,从查询的字段指数得到表名,如:
SELECT * FROM TableOne Left Join Table2 ON Table2.MasterField = Table1.KeyField
你可以使用一个TADODataSet
来获取Recordset
,迭代的Fields
集,并获得了表/字段名称如下:
for I := 0 to ADODataSet1.Recordset.Fields.Count - 1 do
begin
TableName := ADODataSet1.Recordset.Fields[i].Properties['BASETABLENAME'].Value;
FieldName := ADODataSet1.Recordset.Fields[i].Properties['BASECOLUMNNAME'].Value;
end;
文章来源: How to get the table name from a field in a join query with MSSQL? (mysql_field_table equivalent)