Бид execute immediate-г сонгох хэллэгт ашиглаж болох уу?
Бид execute immediate-г сонгох хэллэгт ашиглаж болох уу?

Видео: Бид execute immediate-г сонгох хэллэгт ашиглаж болох уу?

Видео: Бид execute immediate-г сонгох хэллэгт ашиглаж болох уу?
Видео: Become A Master Of SDXL Training With Kohya SS LoRAs - Combine Power Of Automatic1111 & SDXL LoRAs 2024, May
Anonim

Хөтөлбөр EXECUTE IMMEDIATE-г ашиглаж болно . ШУУД ГҮЙЦЭТГҮҮЛ тодорхойлдог а сонгох буцаасан мөрүүдийг боловсруулах гогцоо. Хэрэв сонгох зөвхөн нэг мөрийг буцаана, үүнийг хийх шаардлагагүй ашиглах а сонгох гогцоо.

Үүний тулд шууд гүйцэтгэхийг хэрхэн ашиглах вэ?

Та тавьж болно ШУУД ГҮЙЦЭТГҮҮЛ FORALL мэдэгдлийн доторх БУЦАХ БӨӨН ЦУГЛУУЛАХ INTO бүхий мэдэгдэл. Та бүх INSERT, UPDATE эсвэл DELETE мэдэгдлийн үр дүнг цуглуулгын багцад хадгалах боломжтой. Та бүртгүүлсэн цуглуулгын элементүүдийг ШУУД ГҮЙЦЭТГҮҮЛ дамжуулан мэдэгдэл АШИГЛАЖ БАЙНА заалт.

Дараа нь асуулт гарч ирнэ, бид нэн даруй гүйцэтгэсний дараа үүрэг хүлээх шаардлагатай юу? Амлах шаардлагагүй дараа бүр ШУУД ГҮЙЦЭТГҮҮЛ . Тодорхой мэдэгдэл хийх ҮГҮЙ шаарддаг а хийх ; жишээ нь, хэрэв Та TRUNCATE ашиглан хүснэгтийг таслах. Одоогийн гүйлгээний хүрээнд хүлээгдээгүй бүх ажил үүрэг хүлээдэг эсвэл буцаах - зөвхөн мэдэгдэл биш гүйцэтгэсэн гэхэд ШУУД ГҮЙЦЭТГҮҮЛ.

Ийм байдлаар бид Oracle функцэд шууд гүйцэтгэхийг ашиглаж болох уу?

The ШУУД ГҮЙЦЭТГҮҮЛ мэдэгдэл нь динамик SQL хэллэг эсвэл нэргүй хэллэгийг гүйцэтгэдэг PL/SQL блок. Та ашиглаж болно Энэ нь шууд төлөөлөх боломжгүй SQL мэдэгдлүүдийг гаргах PL/SQL , эсвэл мэдэгдлийг хаана бий болгох Та хий бүх хүснэгтийн нэр, WHERE заалт гэх мэтийг урьдчилан мэдэхгүй байх.

Бид яагаад Oracle дээр шууд гүйцэтгэхийг ашигладаг вэ?

ШУУД ГҮЙЦЭТГҮҮЛ боломжийг олгодог гүйцэтгэл стринг хэлбэрээр хадгалагдаж, зөвхөн ажиллах үед үнэлэгддэг DML эсвэл DDL мэдэгдлийн. Энэ нь програмын логик дээр үндэслэн мэдэгдлийг динамикаар үүсгэх боломжийг олгодог. ШУУД ГҮЙЦЭТГҮҮЛ бас таны чадах цорын ганц арга зам юм гүйцэтгэх a доторх DDL PL/SQL блок.

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