|
|
Δημοσιεύτηκε στιςΧθες στις 20:48
|
|
|

απαιτήσεις: Ορισμένα δεδομένα επιτρέπουν τη βρώμικη ανάγνωση, όπως το περιεχόμενο του άρθρου, οι προβολές σελίδων, τα σχόλια κ.λπ., η οποία δεν είναι τόσο αυστηρή όσο τα οικονομικά δεδομένα. Για τη βελτίωση των επιδόσεων του ερωτήματος, μπορούν να χρησιμοποιηθούν συναλλαγές ReadUncommitted (ReadUncommitted transactions), αλλά τα SqlTransaction και TransactionScope έχουν σφάλματα επιπέδου απομόνωσης διαρροών που δεν έχουν επιδιορθωθεί ακόμα, επομένως εξετάστε το ενδεχόμενο να χρησιμοποιήσετε τη λύση WITH (NOLOCK).
Αναθεώρηση:
Επίπεδα απομόνωσης διαρροής SqlTransaction και TransactionScope (αυτό το σφάλμα υπάρχει εδώ και 8 χρόνια και ακόμα δεν έχει διορθωθεί!) Εκτιμώ ότι πολλοί άνθρωποι μπορεί να επηρεαστούν, αλλά μπορεί να μην το συνειδητοποιούν):Η σύνδεση με υπερσύνδεσμο είναι ορατή.
Αυτό το άρθρο πρέπει να αναφέρεται στο SqlScriptDOM για να αναλύσει τις δηλώσεις SQL και να προσθέσει το WITH(NOLOCK). Ανατρέξτε στο έργο ανοιχτού κώδικα:Η σύνδεση με υπερσύνδεσμο είναι ορατή.
Ο Nuget αναφέρει ως εξής:
Δημιουργήστε μια νέα δυνατότητα AllowDirtyReadAttribute.cs, κωδικοποιήστε ως εξής:
Δημιουργήστε ένα νέο WithNoLockInterceptor για να παρακάμψετε ορισμένες μεθόδους στο DbCommandInterceptor. Ο κώδικας έχει ως εξής:
Εισαγωγή στον πυρήνα EF με την ακόλουθη διαμόρφωση:
Χρησιμοποιήστε το για να το προσθέσετε πάνω από τη μέθοδο ελεγκτή[Να επιτρέπεταιDirtyRead]Μπορώ.
Πρόταση Raw SQL:
ΕΠΙΛΕΞΤΕ [o]. [ταυτότητα], [ο]. [ΌνομαΠελάτη], [Ο0]. [ταυτότητα], [Ο0]. [ΚωδΠαραγγελίας], [Ο0]. [Προϊόν] ΑΠΟ [Διατάσσει] AS [ιε] ΑΡΙΣΤΕΡΌΣ ΕΞΩΤΕΡΙΚΌΣ ΣΎΝΔΕΣΜΟΣ [Γραμμές παραγγελίας] AS [o0] ON [ο]. [Id] = [o0]. [Αναγνωριστικό παραγγελίας] ΟΠΟΥ [ο]. [id] = 1 ΔΙΑΤΑΞΗ ΑΠΟ [ο]. [Ταυτότητα]; Δήλωση που δημιουργήθηκε μετά την προσθήκη του NOLOCK:
ΕΠΙΛΕΞΤΕ [o]. [ταυτότητα], [ο]. [ΌνομαΠελάτη], [Ο0]. [ταυτότητα], [Ο0]. [ΚωδΠαραγγελίας], [Ο0]. [Προϊόν] ΑΠΟ [Παραγγελίες] AS [o] ΜΕ (NOLOCK) ΑΡΙΣΤΕΡΌΣ ΕΞΩΤΕΡΙΚΌΣ ΣΎΝΔΕΣΜΟΣ [Γραμμές παραγγελίας] AS [o0] ΜΕ (NOLOCK) ON [ο]. [Id] = [o0]. [Αναγνωριστικό παραγγελίας] ΟΠΟΥ [ο]. [id] = 1 ΔΙΑΤΑΞΗ ΑΠΟ [ο]. [Ταυτότητα]; |
Προηγούμενος:(MSSQL) SQL Server Αναζήτηση πλήρους κειμένου, Ευρετήριο πλήρους κειμένου
|