我想在数据库不可用时引发异常(即,由于物理上断开了硬盘)。我期望connection.Open()在这种情况下失败,但它是成功的 - 可能是由于缓存。问题是,当软件稍后尝试写入数据库时,它会在那时失败。
我的问题:检测数据库何时不可用的最佳方法是什么?
我正在使用SQL Local DB,C#,。net 4.0
答案 0 :(得分:1)
根据配置,它实际上不会打开Open上的任何表格 在桌子上做一个简单的选择前1。
如果具有Master数据库的驱动器已关闭,那么Open可能会失败。
即使在SSMS中,即使包含所有表的驱动器都已用完,您通常也会看到数据库名称。