使用C#,Visual Studio 2008中,SQL Server 2000中(至2008年)SQL連接的性能問題
我用我的SQL調用一個數據層類在我的Web應用程序:
在數據層都是SQL調用該應用程序,並且所有SQL活動都發生在該類中。
例如:
protected void UpdatePeople(int iPeopleID, string Lastname......)
{
InitCmd("sUpdatePeople");
c_objSQLCmd.Parameters.Add(new SqlParameter("@PeopleID", iPeopleID));
c_objSQLCmd.Parameters.Add(new SqlParameter("@LastName", szLastName));
CmdExecuteNonQuery();
}
然後,我有做SQL工作輔助對象:
private void InitCmdSP(string szStoredProc)
{
c_objSQLCmd.Parameters.Clear();
c_objSQLCmd.CommandType = CommandType.StoredProcedure;
c_objSQLCmd.CommandText = szStoredProc;
}
private int CmdExecuteNonQuery()
{
int iReturn = 0;
if (c_objSQLConn.State != ConnectionState.Open)
c_objSQLConn.Open();
iReturn = c_objSQLCmd.ExecuteNonQuery();
c_objSQLConn.Close();
return iReturn;
}
我也有幫手obects返回數據表或數據集和的ExecuteScalar和返回INT,字符串等等。
我的問題是,我打開/關閉SQL連接每次都會帶來什麼性能?
到目前爲止,應用程序通常少於600-700個用戶,並且其中很少用戶同時使用,因此對用戶的感知性能可能不是一個回頭問題。我只是想考慮最佳做法。
感謝, 約翰
另一方面,我將通過使用「使用語句」 - http://www.w3enterprises.com/articles/using.aspx推出所有連接邏輯,以確保在出現任何異常時處理連接發生 – WorldIsRound 2011-03-26 14:17:42