我正在通过ODBC访问MySql数据库。它通常工作正常,但如果数据库停止并重新启动,我必须重新启动我的应用程序才能重新连接到数据库。
访问数据库的代码如下:
OdbcConnection connection = new OdbcConnection(connectString);
OdbcCommand command = connection.CreateCommand();
command.CommandType = CommandType.Text;
command.CommandText = "select * from cds";
OdbcDataAdapter dataAdapter = new OdbcDataAdapter(command);
DataSet dataSet = new DataSet();
connection.Open();
dataAdapter.Fill(dataSet);
connection.Close();
重新启动数据库后,我在dataAdapter.Fill方法中得到一个'MySql服务器已经消失'异常。是 有什么办法可以在检测到连接断开时重新连接到数据库吗?
我使用VS2008和MySql 5.1.30。
答案 0 :(得分:0)
这“重新启动应用程序以重新连接到数据库”只是一个糟糕的设计决定。数据库连接的初始化不应该放在启动代码中,而是放在一个单独的过程中,如果你的一个方法得到异常“MySql服务器已经消失”,只需调用此过程以重新初始化与DB的连接。