有关测试SQL连接和交换数据库的建议

时间:2013-11-24 16:56:30

标签: c# sql sqlconnection

大家好,我一直在寻求关于某人如何做某事的一些建议

  1. 我需要为主服务器测试sql连接,如果连接返回false,那么我需要设置一个变量来告诉程序使用它自己的本地sql ce数据库
  2. 如何测试该连接然后设置该变量?

    你们会同意这样的事吗

    try
    {
      con.open();
      standalone=false;
      con.close();
    }
    catch
    {
     standalone=true;
     con.close();
    }
    

2 个答案:

答案 0 :(得分:0)

您需要处理sqlexception,如果出现这种情况,您可以使用本地连接 见http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlconnection.open(v=vs.110).aspx

答案 1 :(得分:0)

不是最好的解决方案,但如果你有一堆查询就行了。无论何时需要打开与对象的连接,都要检查第一个连接字符串是否一切正常。否则你的第二个连接字符串。

using (SqlConnection Conn = new SqlConnection(connectionString1))
{
    try
    {
        Conn.Open();
        // Here goes your statements for querying your db.

    }
    catch (Exception Ex)
    {
        using(SqlConnection Conn2 = new SqlConnection(connectionString2))
        {
            try
            {
                 Conn2.Open();
                 // Here goes your statements for querying your db.
            }
            catch(Exception Ex2)
            {
                 // Here goes your error handling code for the second connection
            }
        }
    }
}

虽然以上内容可能是您问题的解决方案,但我应该表达一个问题,这是自我阅读您的问题以来出现的问题。假设您连接到您的第一个数据库,并且您需要使用它进行任何跟踪。一段时间后出现问题,你无法连接到你的第一个数据库。所以你将连接到你的第二个数据库。然后,当您使用第一个数据库时,第二个数据库的数据将与您拥有的数据不一致。