Macht es einen Unterschied, ob ich SQLCommand
/SQLConnection
statt OleDbCommand
/OleDbConnection
verwenden. Bekomme ich Vorteile daraus, aus Sicht der API-Komfortabilität, der Funktion, der Leistung oder der Sicherheit? Oder irgendeine andere Perspektive?SQLCommand/SQLConnection- vs OleDbCommand/OleDbConnection
Antwort
OleDbCommand
und OleDbConnection
sind allgemein. SqlCommand
und SqlConnection
sind für SQL Server spezifisch und können ihre Funktionen nutzen. Sie stellen auch die Features von SQL Server bereit. Zum Beispiel können Sie sie verwenden, um XML-Spalten zu manipulieren.
mit SQLConnection- können Sie Transaktionen verwenden und Transaktionstive wie:
using(var scope = new TransactionScope())
{
//do a lot of stuff with sqlconnection/sqlcommand (s)
scope.Complete()
}
Sie den MSDTC-Dienst für diese Funktion aktiviert haben, müssen
hier http://valueinjecter.codeplex.com/ aussehen zu arbeiten, in der Data Access Layer Seite, wo ich zeigen Sie dies
Aber OleDB hat auch Transaktionen. Ich kann eine Transaktion an mehrere Befehle übergeben, sie festschreiben und zurückrollen. Was ist der Vorteil der oben genannten? Einfach schöner zu lesen? – bitbonk
Ja, aber was sind diese Funktionen? – bitbonk