Бид хадгалагдсан горимд гүйлгээ ашиглаж болох уу?
Бид хадгалагдсан горимд гүйлгээ ашиглаж болох уу?

Видео: Бид хадгалагдсан горимд гүйлгээ ашиглаж болох уу?

Видео: Бид хадгалагдсан горимд гүйлгээ ашиглаж болох уу?
Видео: Камера ANBIUX ДВУГЛАЗКА УДИВИЛА после ОБНОВЛЕНИЯ!!! 2024, May
Anonim

Хэрэв бид -д нэгээс олон SQL хэллэгтэй байх хадгалагдсан процедур болон бид SQL мэдэгдлүүдийн аль нэгнийх нь улмаас алдаа гарсан тохиолдолд SQL хэллэгийн аль нэгээр хийсэн өөрчлөлтийг буцаахыг хүсч байвал, Бид хадгалагдсан горимд гүйлгээг ашиглаж болно.

Тэгэхээр хадгалагдсан процедурууд гүйлгээнд ажилладаг уу?

Оруулсан хадгалагдсан процедурууд байна гүйцэтгэсэн дахь гүйлгээ хамгийн гадна талын контекст хадгалагдсан процедур . Энэ бол анхдагч тохиргоо юм. Дээр дурдсан өгөгдмөл зан үйлийг хангана. Энэ нь a-д байгаа бүх SQL мэдэгдлүүд юм хадгалагдсан процедурыг гүйцэтгэх сингл байдлаар гүйлгээ блок.

Дээрхээс гадна бид commit-ийг процедурт ашиглаж болох уу? Ерөнхийдөө, журам байх ёсгүй хийх . Хэрэв чи хийх хадгалсан дотор журам , та үүнийг дахин ашиглах боломжийг хязгаарлаж байна, учир нь дуудлага хийгч үүнийг өөрчлөхийг хүсч байна журам илүү том гүйлгээний нэг хэсэг болох нь зүгээр л дуудаж болохгүй журам шууд.

Үүнтэй холбогдуулан бид SQL функцэд гүйлгээг ашиглаж болох уу?

1 Хариулт. Тийм ч учраас гүйлгээ нь шаардлагагүй юм sql - сервер функцууд . Гэсэн хэдий ч та чадна өөрчлөх гүйлгээ тусгаарлах түвшин, жишээ нь, та болно ашиглах NOLOCK-ийн зөвлөмж "уншихгүй" гүйлгээ тусгаарлах түвшин болон бусад мэдээллүүдийг уншина уу гүйлгээ.

Хэрэв тийм бол бид SQL-д үүрлэсэн гүйлгээг ашиглаж болох уу, тэгвэл яаж?

SQL Сервер үнэхээр дэмждэггүй үүрлэсэн гүйлгээ . Ганц л байна гүйлгээ тухай үед. Энэ нэг гүйлгээ суурьтай үүрлэсэн гүйлгээ тоолуур, @@TRANCOUNT. Дараалсан бүр эхэлнэ гүйлгээ нэмэгдэл нь тус бүрийг нэгээр нь тоолох гүйлгээ нэгээр бууруулдаг.

Зөвлөмж болгож буй: