如何检查远程数据库MYSQL是否可用

时间:2019-02-11 09:41:55

标签: c# mysql

我需要在MySQL远程数据库中的我的网页aspx上注册用户访问权限。 但是此MySQL远程数据库可能不可用。

我已经尝试过此代码,但是如何在 bool IsServerConnected()方法中执行 RegisterUSer()方法?

public bool IsServerConnected()
{
    using (var l_oConnection =
        new OdbcConnection(ConfigurationManager.ConnectionStrings["ConnMySQL"].ConnectionString))
    {
        try
        {
            l_oConnection.Open();
            return true;
        }
        catch (OdbcException)
        {
            return false;
        }
    }
}


private void RegisterUSer()
{
    using (OdbcConnection myConnectionString =
      new OdbcConnection(ConfigurationManager.ConnectionStrings["ConnMySQL"].ConnectionString))
    {
        string sql = @String.Format(" INSERT IGNORE INTO tbl_user ");
        sql += String.Format(" ... ");

        using (OdbcCommand command =
                new OdbcCommand(sql, myConnectionString))
        {
            try
            {
                command.Connection.Open();
                command.ExecuteNonQuery();
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                command.Connection.Close();
            }
        }

#Edit 01

enter image description here

错误:

  

找不到类型或名称空间名称'resultType'(您是   缺少using指令或程序集引用?)

2 个答案:

答案 0 :(得分:1)

在C#中尝试此操作。希望我能帮上忙。

back online label

答案 1 :(得分:0)

您可以执行“包装器”方法,该方法首先调用IsServerConnected(),然后根据返回的布尔值调用,然后调用RegisterUSer()或在数据库不可用时引发错误。

快速而肮脏的伪代码

private resultType ChickenWrapMethod() 
{ 
    if (!IsServerConnected()) 
    { 
        //Throw some error here and exit
    }

    RegisterUSer()
}

顺便说一句...我认为您应该考虑从方法中打开sql连接,以便两个操作都可以共享它