Ил тод курсор ба далд курсорын ялгаа

Ил тод курсор ба далд курсорын ялгаа
Ил тод курсор ба далд курсорын ялгаа

Видео: Ил тод курсор ба далд курсорын ялгаа

Видео: Ил тод курсор ба далд курсорын ялгаа
Видео: Summer Direction CAL - Interlocking Crochet: Dark Arrows 2024, Арваннэгдүгээр
Anonim

Ил тод курсор ба далд курсор

Өгөгдлийн сангийн тухай ярихад курсор нь өгөгдлийн сангийн бүртгэлүүд дээр шилжих боломжийг олгодог хяналтын бүтэц юм. Курсор нь SQL сонгох мэдэгдэлд нэр өгөх механизмыг өгдөг бөгөөд дараа нь тухайн SQL мэдэгдлийн доторх мэдээллийг удирдахад ашиглаж болно. Тодорхой заасан курсор байхгүй үед PL/SQL дээр Select мэдэгдлийг гаргах бүрт далд курсорууд автоматаар үүсгэгдэж, ашиглагддаг. Нэрийнх нь дагуу тодорхой курсорууд нь хөгжүүлэгчээс тодорхой тодорхойлогддог. PL/SQL-д тодорхой курсор нь курсор түлхүүр үгээр тодорхойлогдсон нэрлэсэн асуулга юм.

Далд курсор гэж юу вэ?

Далд курсорыг сонгох мэдэгдэл гаргах бүрт Oracle автоматаар үүсгэж ашигладаг. Хэрэв далд курсор ашиглавал Мэдээллийн сангийн удирдлагын систем (DBMS) нь нээх, татах, хаах үйлдлүүдийг автоматаар гүйцэтгэдэг. Далд курсорыг зөвхөн нэг мөр буцаадаг SQL хэллэгт ашиглах ёстой. Хэрэв SQL хэллэг нь нэгээс олон мөрийг буцаавал далд курсор ашиглах нь алдаа гаргах болно. Далд курсор нь Data Manipulation Language (DML) хэллэг бүртэй автоматаар холбогддог, тухайлбал INSERT, UPDATE, DELETE мэдэгдлүүд. Мөн далд курсорыг SELECT INTO хэллэгийг боловсруулахад ашигладаг. Далд курсор ашиглан өгөгдөл татах үед SQL хэллэг ямар ч өгөгдөл буцаахгүй үед NO_DATA_FOUND онцгой тохиолдол гарч болно. Цаашилбал, SQL хэллэг нь нэгээс олон мөрийг буцаавал далд курсорууд ТОО_ОЛОН_ROWS онцгой тохиолдлуудыг нэмэгдүүлэх боломжтой.

Тодорхой курсор гэж юу вэ?

Өмнө дурьдсанчлан, тодорхой курсорууд нь нэр ашиглан тодорхойлсон асуулга юм. Тодорхой курсорыг олон тооны бичлэгийн заагч гэж үзэж болох ба заагчийг бичлэгийн багц дотор урагшлуулж болно. Тодорхой курсор нь хэрэглэгчдэд өгөгдлийг нээх, хаах, дуудах бүрэн хяналтыг өгдөг. Мөн тодорхой курсор ашиглан олон мөр татах боломжтой. Ил тод курсорууд нь ямар ч функц эсвэл процедурын нэгэн адил параметрүүдийг авч болох бөгөөд ингэснээр курсорын хувьсагчийг гүйцэтгэх бүрд нь өөрчилж болно. Нэмж дурдахад, тодорхой курсорууд нь PL/SQL бичлэгийн хувьсагч руу бүхэл мөрийг оруулах боломжийг олгодог. Тодорхой курсорыг ашиглахдаа эхлээд нэрийг ашиглан зарлах шаардлагатай. Курсорт өгсөн нэрээр курсорын шинж чанарууд руу хандаж болно. Мэдүүлсний дараа курсорыг эхлээд нээх хэрэгтэй. Дараа нь татан авалтыг эхлүүлж болно. Хэрэв олон мөр татах шаардлагатай бол татах үйлдлийг гогцоо дотор хийх шаардлагатай. Эцэст нь курсорыг хаах шаардлагатай.

Тодорхой курсор ба далд курсорын ялгаа

Далд курсор болон ил курсор хоёрын гол ялгаа нь таныг сонгох мэдэгдэл гаргах үед далд курсорууд автоматаар үүсгэгддэг байхад тодорхой курсорыг нэр өгөх замаар тодорхой тодорхойлох шаардлагатай байдаг. Цаашилбал, тодорхой курсор ашиглан олон мөр татах боломжтой бол далд курсор нь зөвхөн нэг мөр татах боломжтой. Мөн NO_DATA_FOUND болон TOO_MANY_ROWS онцгой тохиолдлууд нь далд курсороос ялгаатай нь илэрхий курсорыг ашиглах үед нэмэгддэггүй. Үндсэндээ далд курсорууд нь өгөгдлийн алдаанд илүү өртөмтгий байдаг бөгөөд тодорхой курсоруудыг бодвол программын хяналт багатай байдаг. Мөн далд курсорыг тодорхой курсороос бага үр ашигтай гэж үздэг.

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