与 大 型 关 系 数 据 库 类 似 , 在 Access中 , 数 据 库 和 数 据 表 的 概 念 是 不 同 的 , 在 Delphi中 似 乎 不 能 建 立 Access数 据 库 ( 至 少 我 没 有 试 过 ) , 但 可 以 通 过 拷 贝 空 数 据 库 文 件 (*.mdb)的 方 式 来 建 立 Access数 据 库 , 然 后 可 以 用 Data pump(Delphi附 带 的 数 据 库 移 植 工 具 )或 通 过 小 程 序 , 用 程 序 或 Batch Move Vcl控 件 来 实 现 移 植 , 由 于 后 两 种 方 式 可 以 指 定 字 段 间 对 应 关 系 及 进 行 附 加 处 理 , 所 以 比 Data pump具 有 更 大 的 灵 活 性 。
解决方案 »
- Invoke 类型转换错误
- 请问一个打印的问题,明天就要交差了,大家帮忙啊
- inteter 和pointer 怎么转化???或者pointer和string 怎么转化???
- 如何注册ms datagrid控件?
- 如何把SQL Server数据库中的某个表导出到Foxpro的数据表中(*.dbf)
- 菜鸟提问!刚开始学delphi就碰见了一堆问题,请各位帮忙看一下
- 怎样在失去焦点后报错,不影响系统退出?
- 如何获得dbcombobox的选择值?
- 关于CPORT3.0控件和串口通讯!!
- 请问fast report for delphi6 的正式版有下载的吗?
- 用EXCEL做好报表的模板,如何用DELPHI来调用它,并实现打印预览及打印的功能。
- 如何动态创建、读、写一个文本文件 ?
至于数据库建立的问题,可以在ACCESS软件中建表,我记得在VB中带了一个数据库软件(类似DATABASE DESKTOP),也蛮好用的.
很容易啊!
搞一个空的*.mdb藏在你的程序中,然后copy出来,再用'create table……'的sql语句创建表不就搞定了吗?
实现部分:
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');)即可。