繁体   English   中英

检查数据库是否存在

[英]Check if a database exists

如何检查数据库中是否存在数据库?

我可以使用Api.JetAttachDatabaseApi.JetOpenDatabase打开一个现有数据库,并使用Api.JetCreateDatabase创建一个新数据库。 但是我找不到允许我检查数据库是否存在的API。

我真的必须从Api.JetAttachDatabase捕获异常来检测数据库是否存在吗?

对于缺少细节,我会深表歉意,因为我正在休假并且没有源代码。 :)这不在我的头上。

o Api.JetAttachDatabase调用JetApi.JetAttachDatabase。

o JetApi.JetAttachDatabase返回错误代码(这就是您想要的!)。

o Api.JetAttachDatabase将其转换为异常。

最大的问题可能是JetApi.Xxx可能不公开。 它可能仅是内部的。 我不得不问原始作者,是否有理由不公开。 如果没有,我可以在ManagedEsent的将来版本中进行更改。

抱歉,不确定的答案。

嘿,我只是想知道:关于CLR函数,例如File.Exists()呢?

-马丁

您不必捕获异常,返回类型返回一个JET_ERR类型,该类型将让您知道是否存在问题,如果您正在寻找简单的布尔检查,我相信您可能不走运,或者必须自己写。

资源 :

http://msdn.microsoft.com/zh-CN/library/gg294074.aspx

http://msdn.microsoft.com/en-us/library/gg294092.aspx

const JET_errSuccess = 0;

result = JetCreateDatabase(...);

if(result != JET_errSuccess)
{
  //throw error
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM