如果从delphi应用程序创建的.mdb(访问数据库)已经存在,如何确定IN APP?

时间:2013-10-13 19:58:43

标签: database delphi ms-access exists adox

我正在编写一个delphi项目,我必须创建一个访问数据库。 我正在使用ADOX。

我承认,在数据库处理方面,我是一名新手,我在网上按照教程并由CreateDatabase Procedure成功创建。我想要做的是确保不存在具有给定名称的数据库,然后只创建数据库。

Procedure CreateDatabase(DB_Name:String);
var
path:String;
dataSource : String;
DB : String;
Begin
  Path := WindowsDirectory;{Its another function}
  delete(Path, 2, length(path));
  DB := Path+':\'+DB_Name+'.mdb';
  DataSource :=
    'Provider=Microsoft.Jet.OLEDB.4.0' +
    ';Data Source=' + DB +
    ';Jet OLEDB:Engine Type=4';
    Form1.ADOXCatalog1.Create1(DataSource);
End;

我在mySql dbs上看到过这类问题,但在访问dbs时没有看到任何问题。

我想要的伪代码形式:

if (DatabaseExists(DB_Name)) then
   do_something
else 
   create_db

有关此问题的一些帮助会有所帮助。 谢谢:)

此致 Priyabrata Chakraverti

1 个答案:

答案 0 :(得分:3)

检查数据库是否存在只是检查数据库文件是否存在。正如Marcus Adams在上面的评论中所建议的那样,Delphi函数FileExists应该可以解决问题。