Odbc打开连接超时

时间:2011-12-05 18:35:32

标签: connection timeout odbc

我遇到了Odbc connection.Open()的问题,下面的代码一切正常,直到它开始冻结高延迟 - 糟糕的连接。

我使用TMnetsim作为模拟不良网络连接的工具。代码在高延迟情况下工作正常,但如果有任何数据包丢失,它就会冻结。即使只有一个数据包就足以打破程序。 (它在%3丢失率后开始丢失数据包)

我的问题是,为什么不连接.Open()没有超时并终止?事件我明确地将ConnectionTimeout设置为5,它永远不会超时并永远保持在那里。

//connectionString: "DRIVER={PostgreSQL Unicode};SERVER=127.0.0.1;UID=master;PWD=pass;DATABASE=global;PORT=5432;"

using (OdbcConnection connection = new OdbcConnection(connectionString))
{
    try
    {
        connection.ConnectionTimeout = 5;
        connection.Open(); // It hangs here forever... ? why?
     }
     catch (Exception ex)
     {
         MessageBox.Show("...");
     }

     // code continues...
}

嗯,我对数据库编程很陌生,你的答案或建议对我来说非常值得,谢谢。

修改 connectionString:“DRIVER = {PostgreSQL Unicode}; SERVER = 127.0.0.1; UID = master; PWD = pass; DATABASE = global; PORT = 5432;”
数据库是Postgresql 8.x

0 个答案:

没有答案