Mysql tárolt eljárások

RED LINE A legjobb ajánlatot az Ön és vállalkozása!

Kabarovszkban ul.Gamarnika 8
(4212) 658-653, 637-673
8-924-200-7194, 8-924-200-4895

A régióban Oroszország
8-800-550-9899
(3-tól 11 az MSC, a hívás ingyenes)
Írjon nekünk

Főoldal MySQL adatbázisok Tárolt eljárások

Hosszú gyötri az üggyel. Irodalom az interneten egy kicsit, főleg az orosz. Meg kellett kérni körül külföldi fórumokon, mélyebb ásni kézikönyvek és tisztázni magunknak valami furcsa pillanatokat. Tehát röviden a tárolt eljárások MySQL.

A tárolt eljárások - mi ez?

A tárolt eljárások jelentek meg, mivel 5 verzió MySQL. Ezek lehetővé teszik, hogy automatizálják a bonyolult folyamatok szintjén MySQL használata helyett külső scripteket erre. Ez ad nekünk a legnagyobb sebesség a végrehajtás, mint mi nem hajt a kérelmek nagy száma miatt, de csak egyszer hívja egy adott eljárás (vagy a funkció).

Mit kell? Telepítse a MySQL szerver verzió 5-ös vagy magasabb (dev.mysql.com/downloads). Eljárások hozhat létre lekérdezést, mint például a parancssor MySQL, de a kényelem tanácsot letölthető MySQL GUI Tools (dev.mysql.com/downloads/gui-tools). Ez a csomag tartalmazza a három program - MySQL Administrator, MySQL Query Browser és a MySQL Migration Toolkit. Szükségünk van az első kettő. (Bár lehet, hogy egy MySQL Query Browser, hanem mindazokat $$ tárolt eljárások néha zavaró).

Az első tárolt eljárás

Tehát nyitott MySQL Administrator, a MySQL szerver és hozzon létre egy új séma (adatbázis), kattintson a katalógusok, válassza a Create New séma a sémák (Ctrl + N). Nevezzük valahogy (pl db). Nyisd az újonnan létrehozott rendszert, válassza tárolt eljárások fülre, majd a Create tárolt Proc. Hívja eljárás eljárás1. A test az eljárás (közötti BEGIN és az END) regisztrálja a következőképpen:


És kattintson Execute SQL - megállapított eljárás. Nyisd MySQL Query Browser, válassza ki a rendszert (db) és adja meg a következő lekérdezést:

Ahhoz, hogy távolítsa el kaku néhány előnyös tárolt eljárások MySQL, meg kell dolgozni változók. Mivel ez túlmutat a jelen cikk, megmutatom, csak néhány példát említsünk.
egyszerű változók


A különbség az egyszerű és a rendszer változókat, hogy a rendszer változók kívülről hozzáférhető a tárolt eljárás. Azaz, a kivonat minden adatot akkor kell használni a rendszert, és a változók, amelyek szükségesek csak az eljáráson belül legyen egyszerű.

Paraméterek tárolt eljárások

Itt is minden nagyon egyszerű. Változás az első sorban, amely kijelenti maga az eljárás:


Itt a kulcsszó jelzi, hogy a paraméter meg van adva, mint a csak olvasható. Továbbá, ez a lehetőség működik, mint egy normál változó eljáráson belül:


Feltételek Cycles. IF THEN ELSE, MÍG

Feltételek és ciklusok akkor feltétlenül szükség van az írás komplex tárolt eljárásokat, de laknak ebben a témában lesz. Azt hiszem, legalább néhány programozási ismeretek van, úgy, hogy a műsor csak szintaxis.

Az egyik a jó alkalmazások tárolt eljárások - ha kell kombinálni több lekérdezés egyetlen adni, például szálak a fórumon, és növeli az összes témát. Tegyük szálak táblázatban


Itt a cím, akkor főcím az új témát. Nos, az asztalra, például a különböző statisztikai változók a helyén, beleértve az összes említett egységes.


Itt, mint minden világos, mondjuk mi van egy rekord a name = szálak és value = 0. Hozzon létre egy új tárolt eljárást eljárás keretében2.


Magyarázza semmi különös, csak a két lekérdezés egyesülnek. Most tudjuk hívni ezt az eljárást az alábbiak szerint:

CALL eljárás keretében2 ( 'My new thread');

Így ahelyett, hogy két, vagy több kérelmet (pl egy php), akkor küldünk egy - optimalizálni, tiszta kódot, és meg lehet változtatni bármikor anélkül, hogy a többi szkript.

Kurzorok teszi, hogy menjen át a kapott eredmények kérelmet. Az elmélet nehéz megmagyarázni, és azt mutatják, a gyakorlatban. Újabb táblázat adatbázisunkban - megtekintve:


Itt fogjuk rögzíteni az összes címkét az összes téma. A tárolt eljárás fog kinézni:


Részletességgel. Az eljárás megy keresztül minden témában, minden tag megtöri a címkék asztalra, és ha a címke hiányzik, akkor adja hozzá.

Nyissa meg a kurzort, és kap az első rekordot. Következő a ciklusban - kiválasztása a találatok száma a címkék az aktuális címke asztalra, és helyezze az eredmény változó iCount. Ha nincs találat, akkor az INSERT lekérdezést beilleszt egy új tag.

A végén, akkor lezárja a kurzort és kilépési eljárásokat. Nos, ez minden.

Emlékezzünk rá, a változó és tekintsünk egy másik manipuláció az asztalunkra -, hogy az összes tag és témák. Azonnal folytatni kell az eljárást:


Kijelentjük két változót - iTags - címkék számát, és iThreads - az összes témát.

Következő két egyszerű SELECT lekérdezés, töltő a változókat. Így a végén ők értéket rendelnek egy változóhoz aktuális egyszerű változók. Ha telefonál ez az eljárás nem ad vissza semmit, de miután egy hívást, akkor feltételezhetjük a kívánt értékeket rendszerváltozókkal:

A következtetés és nem lesz;) Én szívesen válaszolunk kérdéseire - írja a megjegyzéseket.

Oszd meg barátaiddal:

Promotion: Foglaljon bármely helyszínen vége előtt a keresetet, és kap kedvezményt
+ kiválasztás szemantikai mag
+ Search Engine Optimization
Ez lehetővé teszi, hogy minél több forgalmat, ezért a vevők az interneten!

Hátralévő idő vásárolni

Minőségi és térfogati ábrázolása az üzleti az interneten igényel növekvő üzleti vállalkozás, amely arra törekszik, hogy növeljék az értékesítés, ezért ügyfeleink között a kis és nagy cégek sok városban Oroszországban és külföldön.

Hogyan dolgozunk:

konzultáció
Megbeszéljük, amire szüksége van, és segít meghatározni, hogy a legjobb, hogy nem!

megállapodás
Mi szolgáltatási szerződés megkötése, amely pontosan meghatározta azokat a feltételeket és kötelezettségeket mindkét fél számára.

a munkák kivitelezését
Közvetlenül az előírt szolgáltatások és a munka a feladat.

támogatás
Szállítása építési beruházások, az alábbi kiigazításokkal és támogatás, ha szükséges.

Még mindig vannak kérdések? Megvitatja a részleteket az igazgató

3-11 az MSC, a hívás ingyenes

Kapcsolódó cikkek