Triggers vs Cursors
Nyob rau hauv ib lub database, ib qho kev tshwm sim yog cov txheej txheem (cov lej ntu) uas tau ua tiav thaum qee qhov xwm txheej tshwm sim hauv lub rooj / saib. Ntawm nws cov lwm yam kev siv, triggers yog tsuas yog siv los tswj kev ncaj ncees nyob rau hauv ib tug database. Tus cursor yog ib qho kev tswj xyuas siv nyob rau hauv cov ntaub ntawv mus rau hauv cov ntaub ntawv database. Nws zoo ib yam li tus iterator muab los ntawm ntau hom lus programming.
Dab tsi yog qhov ua rau?
Ib tug txhais tau tias yog txheej txheem (cov ntu ntu) uas tau ua tiav thaum qee qhov xwm txheej tshwm sim hauv lub rooj / saib ntawm cov ntaub ntawv. Ntawm nws cov lwm yam kev siv, triggers yog tsuas yog siv los tswj kev ncaj ncees nyob rau hauv ib tug database. Cov txiaj ntsig tseem siv tau rau kev tswj hwm kev lag luam, tshawb xyuas cov kev hloov pauv hauv cov ntaub ntawv thiab luam cov ntaub ntawv. Feem ntau cov kev tshwm sim yog Cov Ntaub Ntawv Manipulation Language (DML) qhov tshwm sim uas tshwm sim thaum cov ntaub ntawv raug tswj xyuas. Qee lub tshuab database txhawb nqa cov ntaub ntawv tsis yog cov ntaub ntawv, uas tau tshwm sim thaum Cov Ntaub Ntawv Txhais Lus (DDL) tshwm sim. Qee qhov piv txwv yog qhov tshwm sim uas raug rho tawm haujlwm thaum lub rooj tsim, thaum lub sijhawm ua haujlwm lossis rov ua haujlwm rov qab tshwm sim, thiab lwm yam. Cov txiaj ntsig no tuaj yeem siv tshwj xeeb rau kev tshuaj xyuas. Oracle database system txhawb schema theem triggers (piv txwv li ua rau raug rho tawm haujlwm thaum database schemas raug hloov kho) xws li Tom Qab Tsim, Ua Ntej Hloov, Tom Qab Hloov, Ua Ntej Tso, Tom Qab Tso, thiab lwm yam. Plaub yam tseem ceeb ntawm kev txhawb nqa los ntawm Oracle yog kab theem pib, Kem theem pib, Txhua Kab Hom ua rau thiab rau Txhua Daim Ntawv Qhia Hom ua rau.
Cursors yog dab tsi?
Tus cursor yog tus qauv tswj siv hauv cov ntaub ntawv los ntawm cov ntaub ntawv khaws cia. Nws zoo ib yam li iterator muab los ntawm ntau hom lus programming. Ntxiv nrog rau kev taug kev los ntawm cov ntaub ntawv hauv cov ntaub ntawv, tus cursors tseem pab txhawb nqa cov ntaub ntawv, ntxiv thiab tshem tawm cov ntaub ntawv. Los ntawm kev txhais txoj kev raug, tus cursors tuaj yeem siv los hla rov qab. Thaum cov lus nug SQL rov qab ib pawg kab, cov no tau ua tiav siv tus cursors. Tus cursor yuav tsum tau tshaj tawm thiab muab lub npe, ua ntej nws tuaj yeem siv tau. Tom qab ntawd tus cursor yuav tsum tau qhib siv OPEN hais kom ua. Qhov kev ua haujlwm no yuav tso tus cursor ua ntej thawj kab ntawm cov ntaub ntawv tshwm sim. Tom qab ntawd tus cursor yuav tsum ua haujlwm FETCH kom tau txais ib kab ntawm cov ntaub ntawv rau hauv daim ntawv thov. Thaum kawg, tus cursor yuav tsum raug kaw siv qhov kev ua haujlwm CLOSE. Kaw tus cursors tuaj yeem qhib dua.
Qhov txawv ntawm Triggers thiab Cursors yog dab tsi?
Ib tug txhais tau tias yog txheej txheem (cov ntu ntu) uas tau ua tiav thaum qee qhov xwm txheej tshwj xeeb tshwm sim hauv lub rooj / saib ntawm cov ntaub ntawv, thaum tus cursor yog tus qauv tswj siv hauv cov ntaub ntawv los ntawm cov ntaub ntawv khaws cia. Ib tus cursor tuaj yeem tshaj tawm thiab siv nyob rau hauv ib qho txiaj ntsig. Hauv qhov xwm txheej zoo li no, cov lus tshaj tawm yuav nyob hauv qhov ua rau. Tom qab ntawd qhov Scope ntawm tus cursor yuav raug txwv rau qhov ua rau ntawd. Nyob rau hauv ib qho kev tshwm sim, yog tias tus cursor tau tshaj tawm rau ntawm lub rooj ntxig lossis lub rooj tshem tawm, xws li tus cursor yuav tsis siv tau los ntawm qhov tshwm sim nested. Thaum ib qho ua tiav lawm, tag nrho cov cursors tsim nyob rau hauv lub trigger yuav raug de-alocated.