Komputer, Data
SQL disimpen tata cara: nggawe lan nggunakake
SQL disimpen tata cara sing modul lunak eksekusi sing bisa disimpen ing database ing wangun saka macem-macem obyek. Ing tembung liyane, iku obyek sing ngandhut SQL-statement. Iki cara disimpen bisa kaleksanan ing aplikasi klien kanggo njaluk kinerja apik. Kajaba iku, fasilitas kuwi asring disebut saka Tulisan utawa malah saka bagean liyane.
introduksi
Akeh wong sing pracaya lagi padha menyang tata cara saka macem-macem basa program-tingkat dhuwur (mungguh, kajaba kanggo MS SQL). Mbok menawa iki bener. Padha duwe paramèter padha, padha bisa ngetokake Nilai padha. Menapa malih, ing sawetara kasus, wong teka menyang kontak. Contone, padha digabungake karo data saka DDL lan data DML, uga fungsi pengguna (jeneng kode - UDF).
tata cara SQL bener disimpen duwe sawetara saka sudhut kaluwihan sing mbedakake antarane pangolahan kuwi. Safety, variable produktivitas program - kabeh iki nengsemake pangguna apa karo data, liyane lan liyane. Pucuk popularitas teka cara kanggo taun 2005-2010, nalika aku tak program saka "Microsoft" ing jeneng «SQL server Manajemen Studio». Kanthi bantuan sawijining, karya karo data wis dadi akeh luwih gampang, luwih praktis lan luwih trep. Taun sawisé taun, iki cara saka ngirim informasi gained popularitas ing lingkungan program. Dina iki, MS SQL Server punika program pancen biasanipun, kang kanggo kedhaftar kanggo "komunikasi" karo data, ngadeg ing par karo "Excel".
Nalika sampeyan nelpon prosedur, iku enggal diproses dening server tanpa pangolahan rasah lan melu-melu user. Sampeyan banjur bisa nindakake tumindak karo informasi: pambusakan, eksekusi, owah-owahan. Swara kabeh iki ing DDL-operator, sing siji-handedly nindakake tumindak Komplek ing sing obyek. Lan iku kabeh mengkono cepet sanget, lan server ora bener dimuat. kacepetan lan produktivitas iki supaya cepet ngirim gedhe Jumlah saka informasi saka pangguna kanggo server lan kosok balene.
Kanggo ngleksanakake karya iki karo informasi, ana sawetara teknologi programming languages. Iki kalebu, contone, PL / SQL saka sistem manajemen basis data Oracle, PSQL ing InterBase lan sistem Firebird, sarta klasik "maykrosoftovskih» transact-SQL. Kabeh mau wis dirancang kanggo nggawe lan mbukak tata cara disimpen, ngijini sampeyan kanggo nggunakake kalkulus dhewe ing Penanganan database gedhe. Sampeyan perlu lan kanggo mesthekake yen sing nindakake Manajemen katrangan, bisa nglindhungi kabeh obyek saka pihak katelu ora sah lan, Mulane, ing tumitah, perubahan utawa pambusakan data tartamtu.
produktivitas
obyek database iki bisa programmed ing macem-macem cara. Iki ngidini kedhaftar kanggo milih jinis proses sing bakal paling cocok, kang ngirit wektu lan energi. Kajaba iku, ing prosedur dhewe wis diproses, saéngga Nyingkiri wektu ageng ngginakaken ing komunikasi antarane server lan pangguna. modul bisa reprogrammed lan diganti ing arah tengen ing pancen sembarang wektu. Utamané worth kang lagi nyimak kacepetan karo kang Bukak saka prosedur SQL disimpen ana: proses luwih cepet liyane padha iku, nggawe trep lan Versatile.
safety
Jinis Processing Alexa bedo saka pangolahan padha ing sing nyedhiyani keamanan meningkat. Iki menthekake dening kasunyatan sing-panganggo liya saka tata cara ngakses bisa ngilangi tanggung. Iki bakal ngidini Administrator kanggo tumindak operasi karo wong-wong mau independen, tanpa wedi interception utawa akses ora sah kanggo database.
transfer data
Komunikasi antarane prosedur SQL disimpen lan aplikasi klien kanggo nggunakake paramèter lan nilai bali. Sing terakhir iku ora perlu kanggo ngirimaken data kanggo prosedur disimpen, nanging informasi (utamané ing request pangguna), lan diproses kanggo SQL. prosedur Sawise disimpen wis rampung sawijining proyek, iku ngirim Paket data bali (nanging, maneh, yen pengin) kanggo aplikasi nelpon nggunakake macem-macem cara kang uga dipun ginakaken minangka telpon kanggo prosedur SQL disimpen lan bali, contone:
- transmisi data liwat jinis parameter Output;
- transmisi data liwat statement bali;
- transmisi data liwat pilihan operator.
Lan saiki katon ing carane proses iki katon nang padha.
1. Nggawe Exec-disimpen ing prosedur SQL
Sampeyan bisa nggawe prosedur ing MS SQL (bridge Studio). Sawise prosedur digawe, iku wis kadhaptar ing simpul database programmable, kang prosedur wis dileksanakake dening operator tumitah. Kanggo nglakokaké SQL tata cara disimpen nggunakake Exec-proses sing ngemot jeneng obyek.
Nalika nggawe jeneng asalé prosedur pisanan, lan banjur digawe siji utawa luwih parameter sing diutus kanggo wong. Paramèter bisa pilihan. Sawisé parameter (s), IE awak saka prosedur, ditulis, iku perlu kanggo nindakake sawetara operasi perlu.
Kasunyatan sing awak bisa duwe kemungkinan lokal, dumunung ing, lan kemungkinan iki sing lokal lan ing hubungan menyang tata cara. Ing tembung liyane, padha bisa dianggep mung ing badan pangobatan Microsoft SQL Server. tata cara disimpen ing kasus iki dianggep lokal.
Mangkono, kanggo nggawe proses, kita perlu jeneng prosedur lan ing paling siji parameter minangka awak prosedur. Elinga pilihan banget ing kasus iki nggawe lan implementasine saka tata cara karo jeneng ngengrengan ing classifier ing.
Awak prosedur bisa duwe jenis operator SQL, contone, kayata nggawe Tabel, nambahi siji utawa luwih larik saka meja, madegaken jinis database lan karakter, lan ing. Nanging, awak prosedur matesi sawetara operasi ing. Sawetara watesan paling penting sing kapacak ing ngisor iki:
- awak ora gawé prosedur disimpen liyane;
- awak ora kudu nggawe roso kesengsem cidra obyek;
- awak ora nggawe memicu sembarang.
2. Setel global ing awak saka prosedur
Sampeyan bisa nggawe kemungkinan lokal kanggo prosedur awak, lan banjur padha dadi ing awak prosedur. A laku apik kanggo nggawe global ing awal awak prosedur disimpen. Nanging sampeyan uga bisa nyetel variabel ngendi wae ing awak saka obyek.
Kadhangkala sing uga sok dong mirsani sing sawetara kemungkinan sing disetel ing baris sing padha, lan saben global dipisahake dening koma. Uga Wigati global wis prefixed karo @. Ing awak saka prosedur, sampeyan bisa nyetel rupo sing arep. Contone, variabel @ NAME1 bisa announced menyang mburi awak prosedur. Supaya kanggo nemtokake nilai kanggo global a ngumumaké nggunakake pesawat saka data pribadi. Ing kontras kanggo kahanan nalika luwih saka siji global ngumumaké ing baris sing padha, mung siji pesawat data pribadi digunakake ing kahanan iki.
Pangguna asring takon: "Carane nemtokake macem-macem nilai ing statement siji ing awak saka prosedur 'Inggih?. Pitakonan menarik, nanging iki akeh luwih gampang saka sampeyan mikir. Jawaban: karo bantuan saka pasangan kayata «Pilih Var = Nilai". Sampeyan bisa nggunakake pasangan iki, dipisahake dening koma.
3. Nggawe prosedur SQL disimpen
Ing macem-macem saka sudhut conto wong nuduhake nggawe prosedur disimpen prasaja lan nglakokaké iku. Nanging, prosedur bisa njupuk paramèter sing proses panggilan bakal duwe nilai cedhak iku (nanging ora tansah). Yen padha cocog, banjur wiwit pangolahan cocog ing awak. Contone, yen sampeyan nggawe prosedur sing bakal njupuk kutha lan wilayah saka panelpon lan bali data bab carane akeh penulis waca kutha cocog lan wilayah. Prosedur bakal query Tabel database saka penulis, contone, Pubs, kanggo Performing iki petungan penulis. Diwenehi database iki, contone, ing Google ngundhuh script SQL karo kaca SQL2005.
Ing contone sadurunge, prosedur njupuk loro paramèter, kang ing Inggris bakal disebut conditionally @State lan @City. Jinis data cocok kanggo jinis kasebut ing aplikasi. Awak prosedur wis kemungkinan internal @TotalAuthors (kabeh penulis), lan global iki digunakake kanggo nampilake sing nomer. Sabanjure rawuh pilihan request bagean sing kabeh counts. Akhire, nilai diwilang ditampilake ing jendela output nggunakake statement print.
Carane nindakake prosedur SQL disimpen
Ana rong cara kanggo nindakake prosedur. Cara pisanan dituduhake dening maringaken paramèter minangka dhaftar koma-dipisahake wis rampung sawisé jeneng prosedur. Upaminipun kita duwe loro nilai (ing tuladha sadurunge). angka sing dikumpulaké nggunakake variabel lan prosedur @State @City. Ing metode iki, paramèter penting saka urutan transmisi. Cara iki disebut urutan transmisi bantahan. Ing cara liya, paramèter sing wis diutus langsung, kang cilik supaya ora penting. cara liya iki dikenal minangka transmisi bantahan jenenge.
Prosedur uga rada Sarak saka khas. Kabeh padha, ing tuladha sadurunge, nanging paramèter sing pindah kene mung. Sing @City parameter wis disimpen pisanan, lan @State disimpen jejere Nilai standar. Setelan gawan biasane diparengake dhewe. SQL tata cara disimpen ana paramèter minangka prasaja. Ing kasus iki, kasedhiya pilihan "ing UT 'nggantèkaké Nilai gawan saka" CA ". Ing pawujudan liya liwat mung siji nilai pitakonan kanggo @City, lan awal pilihan @State kanggo "CA". programer Experienced sing menehi saran sing kabeh kemungkinan standar dumunung nyedhaki mburi dhaftar parameter. Yen ora, eksekusi ora bisa, sampeyan kudu bisa karo transfer bantahan jenenge sing maneh lan luwih rumit.
4. Tata cara sing kasimpen SQL Server: cara bali
Ana telung cara utama kanggo ngirim data disimpen ing disebut prosedur. Padha sing kapacak ing ngisor:
- nilai bali prosedur disimpen;
- parameter Output disimpen tata cara;
- Pilih salah siji cara disimpen.
4.1 angka Bali saka tata cara SQL disimpen
Ing prosedur iki, prosedur mranata ing Nilai saka global lokal lan ngasilake. Prosedur uga bisa langsung bali Nilai pancet. Ing tuladha ing ngisor iki, kita wis digawe prosedur sing ngasilake nomer total sponsor. Yen kita mbandhingaké iki karo prosedur sadurungé, sampeyan bisa ndeleng sing Nilai saka print diganti dening mbalikke.
Saiki ayo kang katon ing carane nindakake prosedur lan nampilake Nilai, bali. Performing tata cara sing netepake lan global printing, kang digawa metu sawise proses. Kabar sing tinimbang Printing operator bisa nggunakake Pilih-operator, contone, Pilih @RetValue, lan OutputValue.
4.2 tata cara Output paramèter SQL disimpen
Nilai nanggepi bisa digunakake kanggo bali global siji sing wis padha dakdeleng ing conto sadurungé. Nggunakake Output ing ngidini prosedur kanggo ngirim siji utawa luwih kemungkinan kanggo partai nelpon. parameter output tetenger minangka wektu tembung tombol iki «Output» nalika nggawe prosedur. Yen parameter sing wis kasebut minangka parameter output, obyek prosedur kudu nemtokake iku nilai. tata cara disimpen SQL, conto kang bisa katon ing ngisor, ing kasus kuwi bali kanggo informasi final.
Ing conto iki, bakal ana jeneng loro akhir minggu: @TotalAuthors lan @TotalNoContract. Lagi kasebut ing dhaftar parameter. kemungkinan iki sing diutus nilai ing awak prosedur. Nalika kita nggunakake paramèter output, panelpon bisa ndeleng angka nyetel ing awak prosedur.
Kajaba iku, ing skenario sadurungé, kaloro variabel sing dinyatakaké ndeleng angka sing diinstal tata cara disimpen, MS SQL Server minangka parameter output. Banjur prosedur wis dileksanakake dening nglamar Nilai normal «CA» parameter. Paramèter ngisor iki output lan, Mulane, ngumumaké variabel sing liwati ing proses diwènèhaké. Elinga yen tembung kunci output global uga kasebut kene. Sawise prosedur wis rampung kasil, nilai bali kanthi nggunakake paramèter output ditampilake ing jendela pesen.
4.3 Milih SQL disimpen tata cara
technique iki digunakake kanggo ngasilake pesawat ing wangun tabel angka data (RecordSet) kanggo nelpon prosedur disimpen. Ing conto iki, SQL prosedur disimpen karo paramèter @AuthID Panjaluk Tabel "penulis" dening nyaring cathetan bali dening parameter @AuthId iki. Pilih operator nemtokaken apa kudu bali menyang nelpon prosedur disimpen. Nalika prosedur disimpen AuthId ditularaké bali. Kaya prosedur tansah ngasilake mung siji rekaman utawa ora ana ing. Nanging, prosedur disimpen ora duwe Watesan ing bali saka luwih saka siji entri. Asring conto bisa ditemokake ing kang data bali milih nggunakake paramèter karo variabel diwilang wis rampung dening nyediakake majemuk saka total angka.
Wusananipun
A prosedur disimpen iku program cantik serius, bali utawa ditransfer, uga kang nggawé variabel perlu amarga aplikasi klien. Wiwit prosedur disimpen wis kaleksanan ing server dhewe, ijol-ijolan dhata ing volume gedhe antarane server lan aplikasi klien (kanggo sawetara petungan) bisa nyingkiri. Iki ndadekake iku bisa kanggo nyuda mbukak ing SQL server, kang, mesthi, tangan sing duwe sing. Salah subspesies sing disimpen tata cara T SQL, nanging sinau needed kanggo sing melu nitahaken saka database nyengsemaken. Ana uga gedhe, malah jumlah ageng nuansa sing bisa migunani ing sinau cara disimpen, Nanging, perlu iki kanggo wong-wong sing planning kanggo nggawe program nyenyet, kalebu ahli.
Similar articles
Trending Now