1
SQL連接對象連接到SQL Server以運行查詢的驅動程序是什麼?C#Sql連接驅動
如果我有以下代碼:
SQLConnection cn = new SqlConnection("server=ServerName;initial catalog=CorporateNA;Integrated Security=SSPI")
cn.Open();
是使用ODBC驅動程序的SQL Server SQL連接對象?我不禁感到這是一個愚蠢的問題,但谷歌搜索該主題是徒勞無益的。當連接到SQL Server的服務器上運行的應用程序出現間歇性超時問題,並且DBA詢問它使用什麼驅動程序進行連接。我不知道如何回答他們。
您正在使用[ADO.NET](你的驅動程序是.NET Framework Data Provider for SQL Server(俗稱的SqlClient)https://msdn.microsoft.com /en-us/library/e80y5yhx(v=vs.110).aspx)。如果您想要,您可以[強制ADO.NET使用ODBC](https://msdn.microsoft.com/en-us/library/aa719762(v = vs.71).aspx)。但是,除非你有充分的理由這樣做,否則你不應該這樣做。 – Icemanind
您應該告訴您的DBA您正在使用SQL Server的.NET Framework數據提供程序。告訴他們你正在使用ADO.NET是不夠的,因爲@Icemanind指出,你可以在ADO.NET中使用ODBC驅動程序(甚至是OleDB驅動程序)。 – Joe
你增加超時了嗎? SqlCommand cmd = new SqlCommand(); cmd.CommandTimeout = 500;已知SQL Server碎片化會降低數據庫的速度。嘗試壓縮數據庫以查看問題是否得到解決。 – jdweng