Komputeran, Databases
SQL profîlek prosedurên: avabikin û bi kar
prosedurên SQL profîlek in module software tîinin, ku dikare bê tomarkirin de heye di form of tiştên cuda. Bi gotineke din, ev an object ku dihewîne SQL-daxuyaniyê de ye. Ev prosedur profîlek dikarin di hyperlînkê ya ji bo bidestxistina performansa baş darvekirin. Li gel vê, wisa tesîsên bi gelek caran ji yên din li Skrîpta yan jî ji tu beşa din navê.
danasînê de
Gelek kes bawer dikin ku ew similar to a prosedurên cuda ne zimanan bernameyên asta bilind (bi rêzê ve, ji bilî ji bo MS SQL). Dibe ku ev rast e. Ew xwedî Parametreyên similar, ew dikarin ji bo nirxa similar bidin. Bi ser de, di hinek rewşan de, ew nav têkiliyê. Ji bo nimûne, ew bi bi database ya DDL û daneyên DML, herweha fonksiyonên user (- UDF navê code) tevî hev.
prosedurên SQL Di rastiyê de profîlek heye cur be cur ên avantajên ku ji wan re di nava pêvajoyên cihêkirin. Ewlehî û hilberînê, bernameyên Jorawjorí - ev hemû bala bikarhêneran xebatê bi database, bêtir û bêtir. Serê populerbûna prosedurên ji bo salên 2005-2010 hat, dema ku ez di programê de ji "Microsoft" de di bin navê «SQL Management Server Studio» rabû. Bi alîkariya xwe, xebata bi databases bûye pir hêsantir, pratîk û gelek zêdetir. Sal li pey salê, ev rêbaza armanç agahî û populerbûna li derdora bernameyên de hatî bidestxistin. Îro, MS SQL Server bernameya bê guman her carê, ku ji bo bikarhênerên bi "têkiliyê" bi database, rawesta û li ser a par bi "Excel" e.
Gava ku tu prosedûra dibêjin, ku di şevekê de ji aliyê server bê pêvajoyên di cihdeye û destwerdana bikarhêner vehûnandin. Sedema jêbirina, darvekirin, guhertina: Paşê tu dikarî ti kiryarên bi agahiyên li ser dîkê. Li ser hemû ev di DDL-operator, ku single-sere xwe pêkanîna çalakiyên kompleks li ser wan tiştên e. Û ew hemû bi awayekî zû çêdibin, û pêşkêşkarê ne di rastiyê de ne barkirî ye. Ev lez û berhemdariya bila hûn zû veguhestina mîqdarên mezin yên agahî ji user ji bo server û cîgirê tersê wê.
Ji bo pêkanîna vî karî bi agahî, çend teknolojiyên zimanan bernameyên hene. Ev di nav de, ji bo nimûne, PL / SQL ji sîstema rêveberiya heye Oracle, PSQL li Interbase û sîstemên Firebird, herweha ya klasîk "maykrosoftovskih» Transact-SQL. Hemû ji wan re hatiye dîzaynkirin bi avabikin û bi rê ve prosedurên profîlek be, û rê, tu ji bo bikaranîna algorîtmayên xwe bi xwe li ser handlers database mezin. Ev pêwîst e, û ji bo ku kesên ku avabûye ji bo birêvebirina van agahîyan, dikarin hemû tiştên ji aliyên sêyemîn destûr de û, ji ber vê yekê, di afirandinê de, lem an jêbirin daneyên taybet biparêzin.
baikarhatinî
Ev tiştên heye dikare bi awayên cuda û bername de. Ev rê dide bikarhêneran ji bo bijartina cureyê pêvajoya ku dê herî minasib, ku rizgar dem û enerjiyê de kir. Li gel vê, di prosedûrê de xwe hazir kirin, bi vî awayî meşîm dem xerc li ser ragihandinê di navbera server û user. The module dikare reprogrammed û ber bi alî rast in, teqez her dem guherî. Bi taybetî jî Hêjayê gotinêye ku bi leza ku bi roketê ya pêvajoya kirarî ya SQL profîlek pêk tê: pêvajoya zûtir din similar to ew e, wê musaît û Amedê.
ewlekarî
Ev awayê muamelekirina agahî ji pêvajoyên li ku provides pêşkeftî yên ewlekariyê jî cihê ye. Ev yek bi vê rastiyê ku bikarhênerên din, ji girtina xwe bigihînin dikare bi temamî ji holê bê misogerkirin. Ev rê dê Administrator ku operasyonên bi wan re bi awayekî serbixwe, bê tirs ji interception an parezi ji nav HTMLê da heye.
transfera daneyan
Ragihandin di navbera prosedureke SQL profîlek û hyperlînkê de ye bi kar Parametreyên û vegere nirxên. Bi ro ye, ne pêwîst bo vîdeoyên agahîyên ku prosedureke profîlek, lê agahiyên ku (bi taybetî li ser daxwaza bikarhênerê), û hazir ji bo SQL. prosedureke carekê profîlek karê xwe temam hatiye, ew packets daneya bikaranîna metodên pircure ên ji aliyê ku mirov dikare weke banga prosedureke SQL profîlek û vegera, ji bo nimûne pêkanîn dişîne dîsa (di heman demê de, careke din, eger tê xwestin) bo sepanê, gazî:
- veguhestina di data bi rêya type parametre Output;
- veguhestina data bi rêya daxuyaniyê de vegera;
- veguhestina Data bi rêya selection carrier.
Û niha li vê pêvajoyê dinêre heman hundir binêrin.
1. Create exec-profîlek di pêvajoya kirarî SQL de
Tu dikarî prosedureke li MS SQL (Managment Studio) biafirîne. Piştî ku pêvajoya kirarî tên afirandin e, ku li ser node heye Programmable, ku di pêvajoya kirarî ya bi operator ên afirandinê pêk rêyên. Birêvebirin SQL prosedurên profîlek bikaranîna exec-a pêvajoya ku dihewîne navê object ya.
Dema afirandina name bê pêvajoya kirarî ya yekemîn, û paşê kirin yek an jî zêdetir Parametreyên bi ku ji wî re hatiye diyarkirin. Parametreyên dikarin azade. Piştî ku parametre (s), yanî bedena prosedûrê de, ji bo nivîsandin, pêwist e avabûye ji bo hin operasyonên pêwîst.
Ev rastiyeke ku, di laş dikare guherbarên herêmî, located in hene, û van guherbarên herêmî û di têkiliyên bi prosedurên in. Bi gotineke din, ew dikarin bi tenê di nava dermanê bedena hesibandin Microsoft SQL Server. prosedurên profîlek di vê rewşê de bi herêmî nirxandin.
Bi vî awayî, ji bo afirandina a pêvajoyê de, divê em bi navê pêvajoya kirarî û bi kêmî ve yek parametre wekî bedeneke pêvajoya kirarî. Ji kerema xwe not bikin ku bijarteka baş di vê rewşê de afirandinê de û pêkanîna prosedurên bi navê schema di classifier e.
Bedenê de prosedureke dikarin bi her rengî ya operatorên SQL hene, bo nimûne, yên weke afirandina sifrê, xistina yek an jî zêdetir rêzên ser sifrê, avakirina cureyê heye û karaktera, û hwd. Lê dîsa jî, bedena kirarî ya hin operasyonên di wê de bi sînor dike. Hin ji yên ku, sînorên herî girîng e li jêr rêzkirî ne:
- di bedenê ne li gorî ti kirarî profîlek din biafirîne;
- bedenê de, divê tiştekî şaş di derbarê object biafirîne;
- di bedenê ne li gorî ti sedemên biafirîne.
2. Set li variable di bedenê de ji prosedûra
Tu dikarî guherbarên herêmî de ji bo pêvajoya kirarî yên laşê bikin, û paşê ew dê di nava bedena pêvajoya kirarî be. A pratîkê de baş e, ku variable di destpêkê de ji bedenê pêvajoya kirarî veşartin. Lê tu bi guherbarên derê ku di bedenê de ji bireserê.
Carna dibe ku hûn dibînin ku hin guherbarên bi di rêza heman danîn, û her variable ji hev cuda bi kommayê. Tebînî, ku guherrok e bi @ re têketinekê hilbijêrî. Ku di bedenê de ji prosedûrê de, tu dikarî variable ji bo ku hûn dixwazin danîn. Ji bo nimûne, variable @ NAME1 dikare ber bi dawiya bedena kirarî ya ragihandin. Ji bo ku bê peywirdarkirin a nirxa ji bo variable îlan bikaranîna set agahiyên şexsî. Li hember vê rewşê dema ku zêdetir ji yek variable ragihand, ku di eynî rêzikê, bi tenê yek set agahiyên şexsî tê bikaranîn di vê rewşê de.
"How to assign nirxên multiple di daxuyaniyek ku di bedenê de ji prosedûra 'Well:? Users caran ji xwe bipirsin. pirsa balkêş, di heman demê de ev e çiqas bêtir bi hêsanî hûn difikirin. Bersiva ji: bi alîkariya van cotên wek «Hilbijêre Var = nirxê". Tu dikarî van cotên, cuda ji aliyê Bêhnokê bikar.
3. Create a pêvajoya kirarî SQL profîlek
Di gelek hevokan ên wergerandî yên gelê nîşan afirandina prosedureke sade profîlek û bicihanîna wê. Lê belê, di prosedûrê de dikarin van parametreyên ku pêvajoya gazîkirina ji wê nirxê close to it (lê ne her tim) hene bigirin. Eger ew li hev kirin, piştre pêvajoyên rêdikirin di nav bedenê de dest pê dike. Ji bo nimûne, eger tu prosedureke ku dê li bajêr û herêmê ji dozvanê bigire û vegere daneyên li ser çiqas nivîskarên ku ji bajêr bi têkildarî û herêma kirîza biafirîne. Prosedûra wê sifrê heye ji nivîskarên hilbijêre, bo nimûne, Pubs, ji bo bicîhanîna vê hesab û nivîskarên. Ji bo bidestxistina van database, ji bo nimûne, Google downloads skrîptê de hatine SQL bi rûpel SQL2005.
Di mînaka çûyî de, pêvajoya kirarî du Parametreyên, ku di English dê navê conditionally @State û @City digire. The type welat rêje ji bo cureyê de hatine diyarkirin di serlêdana. Bedenê de prosedureke heye guherbarên navxweyî @TotalAuthors (hemû nivîskarên), û ev variable tê bikaranîn ji bo nîşandanê hejmara wan. Next a beşa request selection ku hemû Arabistana tê. Di dawiyê de, nirxa tê hejmartin di paceya encam de bikaranîna daxuyaniya print de nîşan dan.
Çawa ji bo pêkanîna prosedureke SQL profîlek
in bi du awayan ji bo pêkanîna prosedûra hene. Rêya yekem bi derbas Parametreyên wek lîsteya-bêhnok cudakirin piştî navê pêvajoya kirarî nekiriye li banî tê. Difikirin, em du nirxên (weke ku di mînaka berê). Ev nirxên bi komkirin fakter û prosedura @State @City. Di vê rêbazê de, parametreyên girîng ên ji bo veguhestinê. Ev rêbaza bi navê cihekê transmission ji behanên. Di metoda duyemîn de, li Parametreyên bi jixwe rasterast rêdan, li ku doza fermana e ne girîng e. Ev rêbaza duyemîn wekî ji nifşekî ji argumanên ku navê wî tê zanîn.
Prosedûra dikarin hinekî ji tîpîk dernekevin. Hemû eynî, wek ku di mînaka berê, lê Parametreyên li vir bi tenê guhert. Ku parametre @City is yekem profîlek be, û @State tenishti nirxa standard. Avakirina default bi giştî cuda veqetandin. SQL prosedurên profîlek Parametreyên wek basît in. Di vê rewşê de, ne di vebijêrka "li UT 'li şûna nirxa standard yên" CA ". Di bighîjne diduyan derbas tenê yek nirx argumana ji bo @City, û vebijêrkên wê yên bijare @State bi "CA". bernamenûs, bi tecrûbe bi goti ku hemû guherbarên default bi dawiya lîsteya parametre li nêzîkî ye. An na, darvekirina ne mumkin e, hûn ji bo xebatê bi veguhestina argumanan bi navê ku êdî û bêtir tevlîhev.
4. Rûtînên Stored SQL Server: riyên vegerînê
in bi sê awayên sereke bişînin daneyên di nav prosedûra navê hene. Ew li jêr rêzkirî ne:
- nirxên vegera pêvajoya kirarî profîlek;
- parametre Output prosedurên profîlek;
- yek ji prosedurên profîlek Select.
4.1 nirxên Return of prosedurên SQL profîlek
Di vê pêvajoya kirarî, prosedûra bihayê variable herêmî sets û vegeriya. Prosedûrê de jî dikarin rasterast a nirxa berdewam vegere. Di mînaka li jêr, em prosedureke ku hejmara giştî ya sponsorên vedigere afirandin kirine. Eger em beramberî bi pêvajoya kirarî ya berê de, hûn dikarin bibînin ku nirxê print bi berevajî şûna.
Niha jî em li ku çawa ji bo pêkanîna pêvajoya kirarî û hegera nirxê, vegere, lê dinêrim. prosedurên Performing pêwîst ji bo avakirin û çapkirina variable, ku ji piştî ku pêvajoya hatiye lidarxistin. Belavoka ku di dewsa Hebîb operator dikarin Hilbijêre-operator bo nimûne, Hilbijêre @RetValue, û OutputValue bi kar tînin,.
4.2 prosedurên Output parametreyê SQL profîlek
Nirxa bersiva dikarin bên bikaranîn ji bo vegerê a variable yek ku em di mînaka berê dît. Bikaranîna di Output dihêle prosedûra bişînin yek an jî zêdetir guherbarên ji partiyê bang. parametre Output wek dem kevanan ev peyva key «Output» dema afirandina pêvajoya kirarî. Eger parametre wekî ku parametre encam diyarkirin, object prosedureke ku divê ew nirxê peywirdarkirin. Profîlek be prosedurên SQL, wergerandî yên ku li jêr tê dîtin, di vê rewşê de vegera bo agahiyên dawî.
Di vê mînakê de, li wê derê navê du heftê: @TotalAuthors û @TotalNoContract. Ew di lîsteya parametre diyarkirin. Ev fakter bi nirxên di nava bedena kirarî ya rêdan. Dema ku em bi kar tînin Parametreyên encam de, dozvanê dikarin nirxê set di bedena kirarî ya bibînin.
Li gel vê, di senaryoya yên berê, du fakter bi îlankirin, ji bo dîtina nirxên ku bi prosedurên profîlek, MS SQL Server wek ku parametre encam hate sazkirin. Hingê pêvajoya kirarî ya bi hukm û nirxa normal «CA» parametre çêkirin. Hirç in encam û, ji ber vê yekê, ragihand, guherbarên di bi awayekî kirasa de derbas bûn. Ji kerema xwe not bikin ku, dema ku keyword encam variable jî li vir hatiye diyarkirin. Piştî ku bi serketî bi dawî tê, bi nirxê vegeriyan, bi bikaranîna Parametreyên encam de bi ser window peyva nîşan dan.
4.3 Hilbijartina a SQL profîlek prosedurên
Ev teknîka tê bikaranîn ji bo vegerê a set li ser sifrê form nirxên welat (RecordSet) ji bo banga prosedureke veşartin. Di vê mînakê de, SQL pêvajoya kirarî bi Parametreyên @AuthID daxwaza sifrê "nivîskarên" ji aliyê malperan qeydên vegeriya ji aliyê vê @AuthId parametre veşartin. Hilbijêre operator biryarê çi Divê ji bo prosedureke profîlek bang vegeriya. Dema ku pêvajoya kirarî profîlek dîsa tê veguhestin AuthId. Bi vî rengî pêvajoya kirarî e her tim bi tenê yek record an jî qet hemû vedigere. Lê belê, di prosedûrê de profîlek ti astengên li ser vegera zêdetir ji yek entry tune ne. Gelek caran wergerandî dikare bê dîtin ku di nav welat, vegera li hilbijartî bi kar Parametreyên bi guherbarên hejmartin bi pêşkêşkirina, pirejimarî ji mesajan giştî nirxên kirin.
di encamê de
A pêvajoya kirarî profîlek a bernameya rind cidî ye, wek avakirina guherbarên pêwîst ji ber hyperlînkê vegeriya an veguhestin, wek baş. Ji ber ku prosedûra tomarbûye li ser pêşkêşkara xwe darvekirin, pevguherîna daneyan di cildên mezin di navbera server û hyperlînkê de (ji bo hin bibana) dikare were kêmkirin. Ev jî mimkun e ji bo kêmkirina barê li ser pêşkêşkara SQL, ku, bê guman, ji aliyê kesên azûlgirt yên wan e. Yek ji binecureyan bi prosedurên profîlek T SQL, di heman demê de xebata xwe ji bo kesên ku tev li avakirina heye bandorker û pêwîst e. jî mezin, heta yekcar pir û rengên ku dikarin di vê lêkolînê de ji prosedurên profîlek kêrhatî hene, lê belê, vê, divê ji bo wan kesên ku bi plan dike ku ji bo bernamên de xurt, di nav de bi awayekî profesyonel.
Similar articles
Trending Now