与 大 型 关 系 数 据 库 类 似 , 在 Access中 , 数 据 库 和 数 据 表 的 概 念 是 不 同 的 , 在 Delphi中 似 乎 不 能 建 立 Access数 据 库 ( 至 少 我 没 有 试 过 ) , 但 可 以 通 过 拷 贝 空 数 据 库 文 件 (*.mdb)的 方 式 来 建 立 Access数 据 库 , 然 后 可 以 用 Data pump(Delphi附 带 的 数 据 库 移 植 工 具 )或 通 过 小 程 序 , 用 程 序 或 Batch Move Vcl控 件 来 实 现 移 植 , 由 于 后 两 种 方 式 可 以 指 定 字 段 间 对 应 关 系 及 进 行 附 加 处 理 , 所 以 比 Data pump具 有 更 大 的 灵 活 性 。 
    

解决方案 »

  1.   

    Delphi中提供了对MS-ACCESS数据库的支持,可以用BDE Administrator为.mdb建立一个别名,然后在TTable中选定这个别名和表名就行了.(ACCESS数据库是多表放在一个文件里).
    至于数据库建立的问题,可以在ACCESS软件中建表,我记得在VB中带了一个数据库软件(类似DATABASE DESKTOP),也蛮好用的.
      

  2.   


    很容易啊!
    搞一个空的*.mdb藏在你的程序中,然后copy出来,再用'create table……'的sql语句创建表不就搞定了吗?
      

  3.   

        uses DAO97;//dao2000
        实现部分:
        procedure TFormOffice.BitBtn4Click(Sender: TObject);
        var Engine:DBEngine;
        begin
          Engine:=CoDBEngine.Create;
          Engine.CreateDatabase('c:\NewAccess.mdb',';LANGID=0x0804;CP=936;COUNTRY=0;',dbEncrypt);
        end; 说明:
     1、在C:\下创建NewAccess.mdb;
     2、语言国家是简体中文;
     3、压缩整理数据库用
    var
    Engine :DBEngine;
    d1,d2,d3:olevariant;
    begin
      Engine := CoDBEngine.Create;
      Engine.RepairDatabase('xxx.mdb');
      Engine.CompactDatabase('xxx.mdb','yyy.mdb',d1,d2,d3);
    end;就是将xxx.mdb压缩整理成yyy.mdb,
    剩下的只是将c:\invoice.mdb删除(DeleteFile('c:\invoice.mdb');),
    然后将c:\God.mdb重新命名(RenameFile('c:\God.mdb','c:\invoice.mdb');)即可。