有没有一种方法可以创建Access数据库(.mdb)而不实际使用Ms Access?我希望我的应用程序能够创建它(当用户在工具栏上按下“新建文档”时)。德尔福:创建没有Ms Access的Access数据库(.mdb)
我正在使用Delphi 5 Ent。
提前致谢! :-)
有没有一种方法可以创建Access数据库(.mdb)而不实际使用Ms Access?我希望我的应用程序能够创建它(当用户在工具栏上按下“新建文档”时)。德尔福:创建没有Ms Access的Access数据库(.mdb)
我正在使用Delphi 5 Ent。
提前致谢! :-)
这是它是如何做:
procedure CreateNewDatabase;
var
AdoxCatalog: Catalog;
begin
AdoxCatalog := CoCatalog.Create;
AdoxCatalog.Create(ConnectionString
+ 'Jet OLEDB:Engine Type='+IntToStr(Jet4x)+';');
end;
您需要ADOX_TLB,您可以通过导入类型库“微软ADO分机2.8 DDL和安全。”得到的。
是的,如果您使用ADOX库,有一种方法。它是一个可以在Delphi中导入的ActiveX库。然后你可以用下面的代码创建一个新的数据库。见here。
procedure TForm1.btnNewDatabaseClick(Sender: TObject);
var
DataSource : string;
dbName : string;
begin
dbName:='c:\aboutdelphi.mdb';
DataSource :=
'Provider=Microsoft.Jet.OLEDB.4.0' +
';Data Source=' + dbName +
';Jet OLEDB:Engine Type=4';
ADOXCatalog1.Create1(DataSource);
end;
感谢您的回答:-) – AFF 2010-10-25 14:20:43
很高兴为您服务。如果您认为我的回答是您的问题的正确答案,您可以将我的答案标记为已接受。这就是StackOverflow的工作原理。先谢谢你。 – 2010-11-10 18:41:48
感谢您的回答。我打算让我的应用成为共享软件。 ADOX的使用如何影响部署?我是否也需要包含ActiveX库或仅包含app.exe? – AFF 2010-10-25 14:19:47
据我所知,ADOX已经安装在XP及更高版本上,就像ADO一样。 [Wikipedia](http://en.wikipedia.org/wiki/Microsoft_Data_Access_Components)说,MDAC 2.5包含ADOX,并且包含在从Windows 2000开始的Windows中。 – himself 2010-10-25 14:28:02
我明白了。现在我明白了。谢谢! :) – AFF 2010-10-25 14:48:58