Creative Saplings

PL / SQL – Kohdistimet

tammikuu 30, 2021
No Comments
Mainokset

Tässä luvussa keskustellaan kohdistimista PL / SQL: ssä. Oracle luo muistialueen, joka tunnetaan nimellä kontekstialue, SQL-käskyn käsittelyä varten, joka sisältää kaikki käskyn käsittelyyn tarvittavat tiedot; esimerkiksi käsiteltyjen rivien määrä jne.

Kohdistin on osoitin tälle kontekstialueelle. PL / SQL ohjaa kontekstialuetta kohdistimen kautta. Kohdistin pitää SQL-käskyn palauttamat rivit (yhden tai useamman). Kohdistimen pitämiä rivejä kutsutaan aktiivisiksi ryhmiksi.

Voit nimetä kohdistimen siten, että siihen voidaan viitata ohjelmassa hakemaan ja käsittelemään SQL-käskyn palauttamia rivejä. kerrallaan. Kohdistimia on kahden tyyppisiä –

  • implisiittisiä kohdistimia
  • eksplisiittisiä kohdistimia

implisiittisiä kohdistimia

implisiittisiä kohdistimia Oracle luo automaattisesti, kun SQL-käsky suoritetaan, kun käskylle ei ole nimenomaista kohdistinta. Ohjelmoijat eivät voi hallita implisiittisiä kohdistimia ja siinä olevia tietoja.

Aina kun DML-käsky (INSERT, UPDATE ja DELETE) annetaan, implisiittinen kohdistin liitetään tähän lausekkeeseen. INSERT-toiminnoissa kohdistin sisältää lisättävät tiedot. UPDATE- ja DELETE-toiminnoissa kohdistin tunnistaa rivit, joihin se vaikuttaa.

PL / SQL: ssä voit viitata viimeisimpään implisiittiseen kohdistimeen SQL-kohdistimena, jolla on aina määritteitä kuten% FOUND ,% ISOPEN,% NOTFOUND ja% ROWCOUNT. SQL-kohdistimessa on muita määritteitä,% BULK_ROWCOUNT ja% BULK_EXCEPTIONS, jotka on suunniteltu käytettäväksi FORALL-käskyn kanssa. Seuraava taulukko sisältää eniten käytettyjen määritteiden kuvauksen –

S.Ei Attribuutti & Kuvaus
1

% FOUND

Palauttaa arvon TOSI, jos INSERT-, UPDATE- tai DELETE-käsky vaikutti yhteen tai useampaan riviin tai SELECT INTO-käsky palautti yhden tai useamman rivin. Muussa tapauksessa se palauttaa EPÄTOSI.

2

% NOTFOUND

Looginen vastakohta kohteelle% FOUND. Se palauttaa arvon TOSI, jos INSERT-, UPDATE- tai DELETE-käsky ei vaikuttanut riveihin tai SELECT INTO -käsky ei palauttanut rivejä. Muussa tapauksessa se palauttaa EPÄTOSI.

3

% ISOPEN

Palaa epäsuorille kohdistimille aina FALSE, koska Oracle sulkee SQL-kohdistimen automaattisesti sen yhteydessä, kun siihen liittyvä SQL-käsky on suoritettu.

4

% ROWCOUNT

Palauttaa rivien määrän, johon INSERT-, UPDATE- tai DELETE-käsky vaikuttaa tai jonka SELECT INTO-käsky palauttaa.

Kaikkia SQL-kohdistimen määritteitä käytetään nimellä sql% attribute_name, kuten alla olevassa esimerkissä esitetään.

Esimerkki

Käytämme ASIAKKAAT-taulukkoa, jonka olimme luoneet ja käyttäneet edellisissä luvuissa.

Seuraava ohjelma päivittää taulukon ja nostaa kunkin asiakkaan palkkaa 500: lla ja käyttää SQL%: ta ROWCOUNT-määritteellä määritetään rivien lukumäärä –

Kun yllä oleva koodi suoritetaan SQL-kehotteessa, se tuottaa seuraavan tuloksen –

6 customers selected PL/SQL procedure successfully completed. 

Jos tarkistat tietueet asiakastaulukossa, huomaat, että rivit on päivitetty –

eksplisiittiset kohdistimet

eksplisiittiset kohdistimet ovat ohjelmoijan määrittämiä kursoreita hallinnan parantamiseksi kontekstialueella. PL / SQL-lohkon ilmoitusosassa tulisi määritellä selkeä kohdistin. Se luodaan SELECT-lauseessa, joka palauttaa useamman kuin yhden rivin.

Syntaksi eksplisiittisen kohdistimen luomiseen on –

CURSOR cursor_name IS select_statement; 

Toimii nimenomaisella kohdistimella sisältää seuraavat vaiheet –

  • Kohdistimen ilmoittaminen muistin alustamiseksi
  • Kohdistimen avaaminen muistin varaamiseksi
  • Kohdistimen hakeminen tietojen noutamiseksi
  • Kohdistimen sulkeminen vapauttamaan varattu muisti

Kohdistimen julistaminen

Kohdistimen ilmoittaminen määrittää kohdistimen nimellä ja liittyvä SELECT-käsky. Esimerkiksi –

CURSOR c_customers IS SELECT id, name, address FROM customers; 

Kohdistimen avaaminen

Kohdistimen avaaminen kohdistaa kohdistimen muistin ja tekee sen valmiiksi palautettujen rivien noutamiseen SQL-käskyn avulla. Avaamme esimerkiksi yllä määritetyn kohdistimen seuraavasti:

OPEN c_customers; 

Kohdistimen hakeminen

Kohdistimen hakeminen edellyttää yhden rivin käyttämistä osoitteessa aika. Haemme esimerkiksi rivejä yllä avatusta kohdistimesta seuraavasti:

FETCH c_customers INTO c_id, c_name, c_addr; 

Kohdistimen sulkeminen

Kohdistimen sulkeminen tarkoittaa vapauttamista varattu muisti.Esimerkiksi suljetaan yllä avattu kohdistin seuraavasti –

CLOSE c_customers;

Esimerkki

Seuraava on täydellinen esimerkki käsitteiden havainnollistamiseksi eksplisiittisistä kohdistimista & minua;

Kun yllä oleva koodi suoritetaan SQL-kehotteessa, se tuottaa seuraavan tuloksen –

1 Ramesh Ahmedabad 2 Khilan Delhi 3 kaushik Kota 4 Chaitali Mumbai 5 Hardik Bhopal 6 Komal MP PL/SQL procedure successfully completed. 
Mainokset

Articles
Previous Post

Sustanon 250 -sykli

Next Post

Kuinka paljon dataa Netflix käyttää - kuinka hallita sitä ja käyttää vähemmän

Vastaa Peruuta vastaus

Viimeisimmät artikkelit

  • Maailman parhaat valokuvauskoulut, 2020
  • Suvereenit kansalaiset vievät hallitustenvastaisen filosofiansa tielle
  • Stukkokorjauskustannusten opas
  • Muckrakers (Suomi)
  • Tarkka onkologia

Arkistot

  • helmikuu 2021
  • tammikuu 2021
  • joulukuu 2020
  • marraskuu 2020
  • lokakuu 2020
  • syyskuu 2020
  • Deutsch
  • Nederlands
  • Svenska
  • Norsk
  • Dansk
  • Español
  • Français
  • Português
  • Italiano
  • Română
  • Polski
  • Čeština
  • Magyar
  • Suomi
  • 日本語
  • 한국어
Proudly powered by WordPress | Theme: Fmi by Forrss.