MySQL lietotāja definētie mainīgie un paplašinātais izpildes plāns

oktobris 29, 2010

Raksts būs par divām lietām, kuras vieno faktiski tikai tas, ka tās ir saistītas ar MySQL. Uzdūros tām atbildot uz jautājumiem Latvijas programmētāju forumos, cik nu mums vispār te tādu ir.

Un tātad pirmais stāsts ir par MySQL lietotāja definētajiem mainīgajiem SQLā. Daudzām DBVS ir savi procedurālie paplašinājumi SQL, piemēram, Oracle tas ir PL/SQL, Microsoft SQL Server tas ir Transact-SQL jeb saīsinot T-SQL, MySQL arī 5.0 versijā pirmo reizi parādījās saglabātās procedūras un funkcijas. Tomēr jau no 3.23.6 versijas ir kaut kādi iedīgļi – lietotāja definētie mainīgie. Viens no populāriem to pielietojumiem, piemēram, ir ģenerēt numurus pēc kārtas, kas itin bieži ir nepieciešams, bet citā veidā MySQL nav iespējams. Piemērs, kurā ir tabula ar primārās atslēgas lauku, kurš ir unikāls, bet nenodrošina numurus pēc kārtas (kas tam, protams, NAV ARĪ JĀDARA!): Lasīt pārējo šī ieraksta daļu »