Delphi里动态创建Access的交叉表视图


本文整理自网络,侵删。

 
const
  dbUseJet = $00000002;
var
  connection: OleVariant;
  DBEngine : OleVariant;
  DataBase : OleVariant;
  QueryDef : OleVariant;
  accessfile: string;
  sql: string;
begin
  accessfile := 'C:/db1.mdb';

  connection := CreateOleObject('Access.Application');
  DBEngine := connection.DBEngine;
  DBEngine.DefaultType := DBUseJet;
  DataBase := DBEngine.OpenDatabase(accessfile);
  sql := ' TRANSFORM first(FieldValue) '
      + ' SELECT ContactID FROM [SELECT a.FieldName, b.ContactID, b.FieldID, '
      + ' b.FieldValue FROM CustomField AS a, ContactFieldValue AS b WHERE '
      + ' a.RecordID = b.FieldID]. AS TmpTable GROUP BY ContactID PIVOT FieldName';
  QueryDef := Database.CreateQueryDef('V_CustomValue',sql);    
  connection.Close();
end;

相关阅读 >>

Delphi 立即停止timer

Delphi ddk与wdk

Delphi下的纯pascal的十六进制转十进制

Delphi压缩与解压_不需要特别的控件

Delphi qq尾巴病毒的编写

Delphi 用webbrowser给要访问的页面加上referer(来路)参数

Delphi uhttp_flood

Delphi vista以上系统的进程静音

Delphi里参数修饰符const、var、out的作用分别是什么?

Delphi padl 处理字符串的函数

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...