我對理解ADO.NET感到困惑,在閱讀了幾篇文章後,我並不清楚什麼是性能考慮。什麼是ADO.NET
- 什麼是ADO.NET和性能考慮事項?
- ADO.NET可能與SQL STORED PROCEDURES關聯或是不同的東西?
謝謝你們!
我對理解ADO.NET感到困惑,在閱讀了幾篇文章後,我並不清楚什麼是性能考慮。什麼是ADO.NET
謝謝你們!
想想Ado.net是一個託管庫,它提供您需要(並可能用於)訪問外部數據源的所有類和功能。這是最簡單的思考方式。但由於它不是一個單獨的庫(因爲它包含在.net庫中),所以人們往往會感到困惑。我們可以說它是.net內的一個庫。
更詳細的解釋可以在Wikipedia找到。
存儲過程是特定數據存儲的一部分。 Ado.net使您能夠以標準方式調用這些存儲過程。
從MSDN
using (SqlConnection connection = new SqlConnection(connectionString))
{
// Create the Command and Parameter objects.
SqlCommand command = new SqlCommand(queryString, connection);
command.Parameters.AddWithValue("@pricePoint", paramValue);
// Open the connection in a try/catch block.
// Create and execute the DataReader, writing the result
// set to the console window.
try
{
connection.Open();
SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{
Console.WriteLine("\t{0}\t{1}\t{2}", reader[0], reader[1], reader[2]);
}
reader.Close();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
Console.ReadLine();
}
一個例子可以看到使用Ado.net類:
SqlConnection
SqlCommand
和SqlDataReader
因此,Ado.net爲您提供了所有這些功能,因此您不必在每次訪問外部數據源(關係數據庫,服務等)時重新發明輪子。
ADO.NET是.NET框架的一個組件,允許您訪問不同的數據源。一個存儲過程是不同的:它是一個函數,它允許你查詢一個關係數據庫以及在數據庫中運行的數據庫。
所以你可以使用ADO.NET來調用存儲過程。舉個例子如下:
using (var con = new SqlConnection(SomeConnectionStringToTheDatabase))
using (var cmd = con.CreateCommand())
{
con.open();
con.CommandText = "NameOfTheStoredProcdureYouWantToInvoke";
con.CommandType = CommandType.StoredProcedure;
var result = command.ExecuteNonQuery();
}
的類SqlConnection,SqlCommand我們用來調用存儲過程是ADO.NET的一部分。
ADO.NET是.NET框架的一部分,它是數據庫驅動程序和應用程序之間的層。在.NET應用程序中的所有數據庫訪問都通過ADO.NET。
數據庫驅動程序通常是本機.NET驅動程序,但它也可以是類似於ODBC驅動程序的東西。
通過ADO.NET例程,您可以通過使用SQL查詢,SQL存儲過程或直接表綁定來訪問數據庫。這些都是特定於數據庫的,並且取決於數據庫和數據庫驅動程序,但是數據庫有一個SQL標準可以擴展,所以至少有一些共同點。
有些數據訪問框架可以用來代替ADO.NET,比如實體框架。但是,它們並不取代ADO.NET,它們仍然使用ADO.NET層來訪問數據庫。
什麼是ADO.NET?
一般來說,它是一種訪問數據庫(或其他類型的數據源,如csv文件)的技術。從程序員的角度來看,它只是一組庫和類,他需要訪問數據庫及其數據庫構件(如表,視圖或存儲過程)。
ADO.NET可能與SQL STORED PROCEDURES關聯或是不同的東西?
您使用ADO.NET爲了訪問一段託管代碼(用C#或VB編寫)中的存儲過程。存儲過程是駐留在數據庫上的一段代碼(用PL/SQL或T-SQL編寫)。是的,他們是完全不同的東西。