Satura rādītājs
MYSQL 5, iekļāva būtiskas izmaiņas, lai kļūtu par populārāko datu bāzi un konkurētu ar augstas veiktspējas uzņēmumu datu bāzēm.Mēs izmēģināsim dažus jēdzieni kā uzskati (VIEW), kā saglabāti vaicājumi, pēc kuriem mēs varam veikt vaicājumus, it kā tās būtu ierakstu tabulas, kā arī TRIGERIS, kas ir kā procedūras, kas ir saistītas ar notikumu tabulās, saglabātajās funkcijās un saglabātajās procedūrās.
Skatījumi
Tie ir definēti, lai atvieglotu un ierobežotu piekļuvi tabulas datiem tikai ierobežotiem lietotājiem.
Struktūra ir statiska un tiek veikta izveides laikā: nākotnes lauki / izmaiņas tabulās netiek atspoguļotas skatā.
Tātad, ja skatam ir SELECT * FROM tabula un pēc tā definēšanas mēs pievienojam lauku sākotnējai tabulai, mēs to neredzēsim skatā.
Ja vēlāk mainām jebkura lauka definīciju sākotnējā tabulā, tad a kļūda / brīdinājums Izmantojot to, jums noteikti būs jāsamazina vērtības: izdzēstie lauki tiks nodoti tālāk Null.
Piemērs skatam, lai redzētu pārdevēja pārdošanas apjomu:
IZVEIDOT VIEW Pārdošana pēc pārdevēja AS SELECT sellerid SUM (daudzums*cena) kopā no pasūtījumiem GROUP by Sellerid ***** BY total DESC
Aktivizētājs
Tās ir saglabātas procedūras, kas saistītas ar konkrētu tabulu, kuras tiek izpildītas pirms vai pēc skaidra darījuma un kuras izpilda to kodu katram ierakstam, ko ietekmē darījums. Tos nevar skaidri izsaukt, jo to izpilde ir saistīta ar tabulu / darījumu / laiku.
Tos sauc arī par aktivizētājiem, aktivizētājiem vai īpašām uzglabātām procedūrām.
Piemērs pirms pārdošanas ievietošanas Es pārbaudu, vai produkts ir pieejams noliktavā, ievietošanas notikums automātiski aktivizē verstock aktivizētāju.
CREATE TRIGGER verstock PIRMS IEVADĪT PĀRDOŠANU KATRĀ RŪDĀ SĀKT DEKLARĒT productid INT; IF (productid) TAD ATLASIET krājumus no produktiem, kur id = productid; END IF; BEIGAS;
Saglabātās procedūras
Saglabātās procedūras un funkcijas ir jaunas MySQL 5.0 versijas funkcijas.
Saglabāta procedūra ir SQL komandu kopums, ko var saglabāt serverī. Kad tas ir izdarīts, klientiem nav atkārtoti jāuzsāk atsevišķas komandas, bet var atsaukties uz saglabāto procedūru.
IZVEIDOT PROCEDŪRU Save_Sale (IN salestype INTEGER) BEGIN DECLARE type CHAR (10); IF salestype = 1 THEN SET type = Mazumtirdzniecība '; ELSE SET type = 'Vairumtirgotājs'; END IF; INSERT INTO sales (tips) VĒRTĪBAS (tips); BEIGAS
Tad tas tiek izsaukts šādi
CALL Save_sales (1)
Vēl viens saglabātu procedūru piemērs
IZVEIDOT PROCEDŪRU ProcedūraInsert (sadaļā Vārds varchar (50), Tālrunis varchar (50)) BEGIN ievietojiet kontaktos (vārds, tālrunis) vērtībās (Vārds, Tālrunis); BEIGAS
Iespējas
saglabātās funkcijas mysql Tās ir līdzīgas saglabātajām procedūrām: tās ir komandu kopums, ko var saglabāt serverī.
Funkcijas ir paredzētas, lai atgrieztu parametrus, funkcijas var izsaukt SQL paziņojumos, piemēram, atlasīt, ievietot utt. Funkcijas nevar atgriezt SQL vaicājumus, tās kalpo tikai tādu uzdevumu veikšanai, kur mums ir jāveic datu apstrāde, aprēķini vai konvertēšana.
Piemēram:
CREATE FUNCTION atlaide (cena, FLOAT procentuālā daļa) ATGRIET FLOAT DETERMINISTIC BEGIN DECLARE FLOAT atlaides summa; SET atlaides summa = cena * procenti / 100; ATGRIEZT atlaides summu; END $$Vai jums patika šī apmācība un palīdzējāt tai?Jūs varat apbalvot autoru, nospiežot šo pogu, lai sniegtu viņam pozitīvu punktu