2010-07-21 5 views
16

Wie kann ich die Isolationsstufe aller SqlCommand ExecuteNonQuery-Aufrufe so einstellen, dass sie nicht festgeschrieben werden? (Verbindung zu einer SQL Server 2008-Unternehmensinstanz)Kann ich die Isolationsstufe in der Verbindungszeichenfolge festlegen?

Ich transformiere einfach statische Daten und füge die Ergebnisse regelmäßig in meine eigenen Tabellen ein und möchte vermeiden, mehr Code zu schreiben als nötig.

+2

http://msdn.microsoft.com/en-us/library/8aht5dh7.aspx –

Antwort

14

Nein, das geht nicht.

Sie müssen die Isolationsstufe beim Starten einer Transaktion explizit definieren.

Weitere Informationen zum Anpassen der Isolationsstufe finden Sie unter MSDN documentation on the topic.

+1

festlegen Von dem, was ich dort gelesen habe, gibt es keine Möglichkeit, die Standardtransaktionsisolationsstufe http://blogs.msdn.com/b/ialonso zu ändern /archive/2012/11/26/how-to-set-the-default-transaction-isolation-level-server-wide.aspx –

+0

"Nein, du kannst nicht" ist die richtige Antwort, aber ich habe es wegen "Sie kann eine Standardtransaktionsisolationsebene pro Datenbankebene definieren ", was nicht zutrifft. – Robertas

1
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED 
BEGIN TRAN 
/* do stuff */ 
COMMIT 
+0

Das ist nicht, was ich fragte - ich verstehe, wie man es in SQL macht, aber ich habe viele vorgefertigte Anweisungen, die brauchen Ich möchte die Isolationsstufe in Code –

0

anzumerken, dass ADODB man die Standardisolationsstufe für die Verbindung erstarren gelassen, während ADO.NET die Isolationsstufe der letzten festgeschriebenen Transaktion als Standard-Isolationsstufe (siehe Anmerkung in https://msdn.microsoft.com/en-us/library/5ha4240h(v=vs.110).aspx) verwenden, . Details zum Festlegen der Isolationsstufe für verschiedene Microsoft-Datenbanktechnologien finden Sie unter https://technet.microsoft.com/en-us/library/ms189542%28v=sql.105%29.aspx?f=255&MSPPError=-2147217396.

Verwandte Themen