Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

SQLServer टाइमआउट अपवादों को कैसे पकड़ें

टाइमआउट की जांच करने के लिए, मेरा मानना ​​है कि आप पूर्व संख्या के मान की जांच करते हैं। अगर यह -2 है, तो आपके पास टाइमआउट स्थिति है।

-2 टाइमआउट के लिए त्रुटि कोड है, जो SQL सर्वर के लिए MDAC ड्राइवर DBNETLIB से लौटा है। इसे रिफ्लेक्टर डाउनलोड करके और TIMEOUT_EXPIRED के लिए System.Data.SqlClient.TdsEnums के अंतर्गत देखकर देखा जा सकता है।

आपका कोड पढ़ेगा:

if (ex.Number == -2)
{
     //handle timeout
}

विफलता प्रदर्शित करने के लिए कोड:

try
{
    SqlConnection sql = new SqlConnection(@"Network Library=DBMSSOCN;Data Source=YourServer,1433;Initial Catalog=YourDB;Integrated Security=SSPI;");
    sql.Open();

    SqlCommand cmd = sql.CreateCommand();
    cmd.CommandText = "DECLARE @i int WHILE EXISTS (SELECT 1 from sysobjects) BEGIN SELECT @i = 1 END";
    cmd.ExecuteNonQuery(); // This line will timeout.

    cmd.Dispose();
    sql.Close();
}
catch (SqlException ex)
{
    if (ex.Number == -2) {
        Console.WriteLine ("Timeout occurred");
    }
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर में डेटाबेस में सभी CHECK और विदेशी कुंजी बाधाओं को कैसे सक्षम करें (T-SQL उदाहरण)

  2. टी-एसक्यूएल - निर्धारित करें कि क्या मान पूर्णांक है

  3. कनेक्शन स्ट्रिंग को एक्सेल करने के लिए गतिशील रूप से फ़ाइल नाम असाइन करें

  4. SQL सर्वर डेटाबेस में उपयोगकर्ता-परिभाषित तालिकाओं की संख्या की गणना करने के 5 तरीके

  5. तालिका बनाने के 2 तरीके यदि यह SQL सर्वर में मौजूद नहीं है