{"id":226016,"date":"2022-08-17T19:37:00","date_gmt":"2022-08-17T16:37:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=226016"},"modified":"2022-11-11T15:58:58","modified_gmt":"2022-11-11T12:58:58","slug":"22-mysql-i-parimat-tava-mida-arendajana-2019-aastal-jaergida","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/et\/22-mysql-i-parimat-tava-mida-arendajana-2019-aastal-jaergida\/","title":{"rendered":"22 MySQL-i parimat tava, mida arendajana 2019. aastal j\u00e4rgida"},"content":{"rendered":"\n<p>MySQL on maailmas populaarsuselt teine \u200b\u200bavatud l\u00e4htekoodiga relatsioonilise andmebaasi halduss\u00fcsteem. Seda kasutatakse kogu maailmas selle p\u00fcsivalt kiire j\u00f5udluse, k\u00f5rge t\u00f6\u00f6kindluse ja kasutuslihtsuse t\u00f5ttu. See artikkel tutvustab m\u00f5ningaid MySQL-i parimaid tavasid.<\/p>\n<p>Nende abil saate harjutada SQL-i ja seada endale SQL-i harjutusi, \u00f5ppida tundma SQL-i limiiti ja SQL-i praktikat veebis, aga ka k\u00f5ige levinumaid SQL-i harjutamise probleeme.<\/p>\n<p>See aitab teil m\u00f5ista reanumbri SQL-i, SQL-i tippu, MySQL-i piirangunihet ja SQL-i v\u00f5rgupraktikat.<\/p>\n<p>Kui otsite kena ja lihtsat viisi suure hulga ridade ja veergude kuvamiseks oma WordPressi veebisaidi k\u00fclastajatele v\u00e4rviliste, informatiivsete ja tundlike interaktiivsete tabelite ja diagrammidega, saate seda kasutada pistikprogrammiga wpDataTables, kontrollida hindu ja k\u00f5iki funktsioonid, mida see <a href=\"https:\/\/wpdatatables.com\/pricing\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">siin<\/a> pakub .<\/p>\n<h2><strong>1 Kasutage alati \u00f5iget andmet\u00fc\u00fcpi<\/strong><\/h2>\n<p>\u00dcks olulisemaid MySQL-i parimaid tavasid on andmet\u00fc\u00fcpide kasutamine andmete olemusest l\u00e4htuvalt. Ebaoluliste andmet\u00fc\u00fcpide kasutamine v\u00f5ib kulutada rohkem ruumi v\u00f5i p\u00f5hjustada vigu.<\/p>\n<p>N\u00e4iteks: varchari (20) kasutamine andmet\u00fc\u00fcbi DATETIME asemel kuup\u00e4eva ja kellaaja v\u00e4\u00e4rtuste salvestamiseks p\u00f5hjustab kuup\u00e4eva ja kellaajaga seotud arvutustes vigu. Samuti on v\u00f5imalik, et salvestatakse kehtetuid andmeid.<\/p>\n<h2><strong>2 Kasutage CHAR (1) asemel VARCHAR (1)<\/strong><\/h2>\n<p>VARCHAR (1) v\u00f5tab teabe salvestamiseks lisabaite, nii et kui sisestate \u00fche m\u00e4rgi, on parem kasutada CHAR (1).<\/p>\n<h2><strong>3 Kasutage andmet\u00fc\u00fcpi CHAR ainult fikseeritud pikkusega andmete salvestamiseks<\/strong><\/h2>\n<p>N\u00e4iteks: kui andmete pikkus on alla 1000, kulub varchari (1000) asemel char (1000) rohkem ruumi.<\/p>\n<h2><strong>4 V\u00e4ltige piirkondlike kuup\u00e4evavormingute kasutamist<\/strong><\/h2>\n<p>Kui kasutate andmet\u00fc\u00fcpi DATETIME v\u00f5i DATE, kasutage alati oma SQL-mootori jaoks sobivat kuup\u00e4evavormingut YYYY-MM-DD v\u00f5i ISO kuup\u00e4evavormingut. Piirkondlikke vorminguid, nagu PP-KK-AAAA v\u00f5i KK-PP-AAAA, ei salvestata \u00f5igesti.<\/p>\n<h2><strong>5 Indeksi v\u00f5tme veergu<\/strong><\/h2>\n<p>On soovitav, et p\u00e4ring tagastaks tulemuse kiiresti, seega veenduge, et indekseeriksite veerud, mida kasutatakse JOIN-klauslites.<\/p>\n<p>Kui kasutate k\u00e4sku UPDATE, mis h\u00f5lmab rohkem kui \u00fchte tabelit, indekseerige kindlasti k\u00f5ik veerud, mida tabelite \u00fchendamiseks kasutatakse.<\/p>\n<h2><strong>6 \u00c4rge kasutage funktsioone indekseeritud veergude kohal&#8230;<\/strong><\/h2>\n<p>\u2026 sest siis kaotab indeks oma eesm\u00e4rgi.<\/p>\n<p>Oletagem n\u00e4iteks, et soovite saada andmeid, kus kliendikoodi kaks esimest t\u00e4hem\u00e4rki on AK. Kirjutage:<\/p>\n<p><code>SELECT columns FROM table WHERE customer_code like 'AK%'<\/code><\/p>\n<p>ja ei kirjuta<\/p>\n<p><code>SELECT columns FROM table WHERE left (customer_code,2)='AK\u2019<\/code><\/p>\n<p>Miks? Esimene n\u00e4ide kasutab indeksit, mille tulemuseks on kiirem reageerimisaeg.<\/p>\n<h2><strong>7 Kasutage SQL SELECT * ainult vajaduse korral<\/strong><\/h2>\n<p>J\u00e4rgides MySQL-i parimate tavade loendit, \u00e4rge kasutage koodis ainult pimesi SELECT *. Kui tabelis on palju veerge, tagastatakse k\u00f5ik. See aeglustab reageerimisaega, eriti kui saadate tulemuse esiotsa rakendusse.<\/p>\n<p>Selle asemel tippige selges\u00f5naliselt v\u00e4lja veergude nimed, mida tegelikult vaja on.<\/p>\n<p>M\u00e4rkus. Pidage meeles, et k\u00f5ik SELECT-laused n\u00f5uavad WHERE-klauslit.<\/p>\n<h2><strong>8 Kasutage punkti ORDER BY ainult vajaduse korral<\/strong><\/h2>\n<p>Kui soovite tulemust esiotsa rakenduses n\u00e4idata, laske sellel tulemuskomplekt TELLIDA. Kui teete seda SQL-is, v\u00f5ib mitme kasutajaga keskkonnas reageerimisaeg aeglustuda.<\/p>\n<h2><strong>9 Valige sobiv andmebaasimootor<\/strong><\/h2>\n<p>Kui arendate rakendust, mis loeb andmeid sagedamini kui kirjutab (nt otsingumootor), valige MyISAM salvestusmootor.<\/p>\n<p>Vale salvestusmootori valimine m\u00f5jutab j\u00f5udlust.<\/p>\n<h2><strong>10 Kasutage EXISTS-klauslit k\u00f5ikjal, kus vaja<\/strong><\/h2>\n<p>Andmete olemasolu kontrollimiseks kasuta EXISTS-klauslit, mis on kiirem reageerimisajaga. N\u00e4iteks kasutage:<\/p>\n<p><code>If EXISTS(SELECT * from Table WHERE col=\u2019some value\u2019)<\/code><\/p>\n<p>\u00c4ra kasuta :<\/p>\n<p><code>If (SELECT count(*) from Table WHERE col=\u2019some value\u2019)&gt;0<\/code><\/p>\n<h2><strong>11 SELETAGE oma SELECT p\u00e4ringuid<\/strong><\/h2>\n<p>Kui kasutate m\u00e4rks\u00f5na EXPLAIN, saate \u00fclevaate sellest, mida MySQL teie p\u00e4ringu t\u00e4itmiseks teeb. See v\u00f5ib aidata teil tuvastada probleeme p\u00e4ringu v\u00f5i tabelistruktuuridega (nt kitsaskohad).<\/p>\n<p>EXPLAIN p\u00e4ring n\u00e4itab teile, milliseid indekseid kasutatakse, kuidas tabelit skannitakse, sorteeritakse jne.<\/p>\n<p>K\u00f5ik, mida pead tegema, on lisada SELECT p\u00e4ringu ette (soovitavalt kompleksne koos liitumistega) m\u00e4rks\u00f5na EXPLAIN. Samuti, kui kasutate selleks phpmyadminit, kuvatakse teie tulemused ilusas tabelis.<\/p>\n<h2><strong>12 Unikaalse rea hankimisel kasutage LIMIT 1<\/strong><\/h2>\n<p>M\u00f5nikord teate tabelite p\u00e4ringute tegemisel ette, et otsite ainult \u00fchte rida. N\u00e4iteks v\u00f5ite hankida unikaalset kirjet v\u00f5i lihtsalt kontrollida suvalise arvu kirjete olemasolu, mis vastavad teie WHERE-klauslile.<\/p>\n<p>Sellistel juhtudel soovite j\u00f5udluse suurendamiseks kasutada MySQL-i limiitfunktsiooni. Siin on veel \u00fcks MySQL-i parimaid tavasid: lihtsalt lisage oma p\u00e4ringule LIMIT 1. Nii ei pea andmebaasimootor l\u00e4bima tervet tabelit v\u00f5i indeksit. See l\u00f5petab skannimise, kui leiab vaid 1 kirje selle kohta, mida otsite.<\/p>\n<p><code>\/\/ do I have anyusersfrom Alabama?<\/code><\/p>\n<p>\/\/ mida MITTE teha:<br \/>\n$r = mysql_query(&#8220;SELECT * FROM user WHERE state = &#8216;Alabama&#8217;&quot;);<br \/>\nif (mysql_num_rows($r) &gt; 0) {<br \/>\n\/\/ \u2026<br \/>\n}<\/p>\n<p>\/\/ palju parem:<br \/>\n$r = mysql_query(&quot;SELECT 1 FROM user WHERE state = &#8216;Alabama&#8217; LIMIT 1&quot;);<br \/>\nif (mysql_num_rows($r) &gt; 0) {<br \/>\n\/\/ \u2026<br \/>\n}<\/p>\n<h2><strong>13 Indekseerige ja kasutage \u00fchenduste jaoks samu veerut\u00fc\u00fcpe<\/strong><\/h2>\n<p>Veel \u00fcks oluline n\u00e4pun\u00e4ide MySQL-i parimate tavade kohta \u2013 kui teie rakendusel on palju JOIN-p\u00e4ringuid, veenduge, et veerud, millega liitute, oleksid m\u00f5lemas tabelis indekseeritud. See m\u00f5jutab MySQL-i \u00fchendamise operatsiooni sisemist optimeerimist.<\/p>\n<p>Samuti peavad \u00fchendatud veerud olema sama t\u00fc\u00fcpi. N\u00e4iteks kui \u00fchendate veeru DECIMAL INT veeruga teisest tabelist, ei saa MySQL kasutada \u00fchtegi indeksit. Isegi stringit\u00fc\u00fcpi veergude m\u00e4rgikodeeringud peavad olema sama t\u00fc\u00fcpi.<\/p>\n<p><code>\/\/ looking for companies in my state $r = mysql_query(\"SELECT company_name FROM users LEFT JOIN companies ON (users.state = companies.state) WHERE users.id = $user_id\");<\/code><\/p>\n<p>\/\/ m\u00f5lemad olekuveerud peaksid olema indekseeritud<br \/>\n\/\/ ja m\u00f5lemad peaksid olema sama t\u00fc\u00fcpi ja sama m\u00e4rgikodeeringuga<br \/>\n\/\/ v\u00f5i MySQL v\u00f5ib teha t\u00e4istabeli kontrolli<\/p>\n<h2><strong>14 Peida MySQL Internetist<\/strong><\/h2>\n<p>Kogenud andmebaasiadministraatorid ja turvat\u00f6\u00f6tajad teavad seda \u2013 \u00e4rge kunagi hostige andmebaasi veebiserveri juure all.<\/p>\n<p>Veebirakenduste puhul peaks MySQL olema peidetud tulem\u00fc\u00fcri taha. Side peaks olema lubatud ainult rakendusserverite ja teie veebiserverite vahel.<\/p>\n<p>Teine v\u00f5imalus on kasutada MySQL-i vahelej\u00e4tmise v\u00f5rku. Kui see on lubatud, kuulab MySQL ainult kohalikke pesa\u00fchendusi ja ignoreerib k\u00f5iki TCP-porte.<\/p>\n<h2><strong>15 Kasutage v\u00e4ikseimaid v\u00f5imalikke andmet\u00fc\u00fcpe<\/strong><\/h2>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-206970-61e8d4b73d55e.jpg\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-206970-61e8d4b73d55e.jpg\" alt=\"22 MySQL-i parimat tava, mida arendajana 2019. aastal j\u00e4rgida\" ><\/a><\/p>\n<p>Las ma r\u00e4\u00e4gin teile \u00fche loo. Kui ma \u00fclikoolis k\u00e4isin, oli filosoofia, et &quot;m\u00e4lu on v\u00e4he&quot;. Need olid 256 MB k\u00f5vaketaste ajad. T\u00e4nap\u00e4eval ei n\u00e4i m\u00e4lu ega k\u00f5vakettaruum enam kedagi hoolivat. Uus filosoofia on, et &quot;m\u00e4lu on odav&quot;. Dollarites v\u00f5ib see t\u00f5si olla, kuid suurte andmet\u00fc\u00fcpide lugemine v\u00f5tab siiski kauem aega kui v\u00e4iksemate lugemine. Suured andmet\u00fc\u00fcbid n\u00f5uavad m\u00e4llu lugemiseks rohkem ketta sektoreid.<\/p>\n<p>Moraal on see, et eirake tabelite kujundamisel kiusatust h\u00fcpata kohe suurima andmet\u00fc\u00fcbi juurde. M\u00f5elge, kas kasutada bigint asemel int.<\/p>\n<p>Samuti v\u00e4ltige bigchar (255) tekstiv\u00e4lju, kui piisab varcharist v\u00f5i v\u00e4iksemast t\u00e4hem\u00e4rgist.<\/p>\n<p>Kui kasutate \u00f5iget andmet\u00fc\u00fcpi, mahub m\u00e4llu v\u00f5i registriv\u00f5tmeplokki rohkem kirjeid. See toob kaasa v\u00e4hem lugemisi ja kiirema j\u00f5udluse.<\/p>\n<h2><strong>16 Kasutage p\u00e4ringu vahem\u00e4llu salvestamise eeliseid<\/strong><\/h2>\n<p>P\u00e4ringu vahem\u00e4llu salvestamine on \u00fcks t\u00f5husamaid meetodeid j\u00f5udluse parandamiseks. Enamikul MySQL-serveritel on see vaikimisi lubatud.<\/p>\n<p>P\u00e4ringu vahem\u00e4lu salvestab SELECT-lause teksti koos vastava tulemusekomplektiga. Kui server saab hiljem identse avalduse, hangib ta tulemused p\u00e4ringu vahem\u00e4lust, selle asemel et seda lauset uuesti s\u00f5eluda ja k\u00e4ivitada. P\u00e4ringu vahem\u00e4lu jagatakse seansside vahel, nii et \u00fche kliendi genereeritud tulemuste komplekti saab saata vastuseks teise kliendi samale p\u00e4ringule.<\/p>\n<p>Kuid nii hea kui see ka pole, on p\u00e4ringute vahem\u00e4llu salvestamisel oma piirangud. V\u00f5tke j\u00e4rgmine avaldus:<\/p>\n<p>Probleem on selles, et p\u00e4ringud sisaldavad teatud mittedeterministlikke funktsioone, nagu NOW() ja RAND(). MySQL ei saa selliseid funktsioone ette arvutada, mist\u00f5ttu neid ei salvestata vahem\u00e4llu.<\/p>\n<p>\u00d5nneks on sellele lihtne lahendus: funktsiooni tulemused saab salvestada muutujasse.<\/p>\n<h2><strong>17 \u00c4rge redigeerige t\u00f5mmisfaile<\/strong><\/h2>\n<p>Pr\u00fcgifailid on v\u00e4ga petlikud ja v\u00f5ivad p\u00f5hjustada korruptsiooni. Miks? Kui olete kunagi n\u00e4inud mysqldumpi loodud dump-faile, n\u00f5ustute, et need n\u00e4evad v\u00e4lja nagu tavalised kahjutud tekstifailid. Seet\u00f5ttu redigeerib enamik inimesi neid standardses tekstiredaktoris, mis p\u00f5hjustab kahjustusi.<\/p>\n<p>Kui olete kunagi proovinud pr\u00fcgifaile redigeerida, \u00f5ppisite kiiresti, et need on k\u00f5ike muud kui tekstifail. Seega on ainus garanteeritud viis probleemide v\u00e4ltimiseks j\u00e4tta t\u00f5mmisfailid rahule.<\/p>\n<h2><strong>18 Kasutage MyISAM-i ploki suuruse s\u00e4tet<\/strong><\/h2>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-206970-61e8d4b8518b8.jpg\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-206970-61e8d4b8518b8.jpg\" alt=\"22 MySQL-i parimat tava, mida arendajana 2019. aastal j\u00e4rgida\" ><\/a><\/p>\n<p>Plokkide suuruse m\u00e4\u00e4ramine MyISAM-i tabelite indeksites on \u00fcks MySQL-i parimatest tavadest. Selle leiate v\u00f5tmepuhvris olevates .MYI-failides ja ka plaadilt. Seade n\u00e4eb v\u00e4lja selline: myisam_block_size.<\/p>\n<p>Selle vaikev\u00e4\u00e4rtus on 1k. See on \u00fcsna v\u00e4ike, et olla kaasaegses s\u00fcsteemis optimaalne. Enamikus failis\u00fcsteemides kasutatakse suuremaid plokke. Ja me teame, et \u00fche registriploki kirjutamine n\u00f5uab lugemist ja seej\u00e4rel kirjutamist. Operatsioonis\u00fcsteem ei pea kunagi kirjutama aluseks olevale kettale, kui ploki suurus on v\u00f5rdne failis\u00fcsteemi ploki suurusega v\u00f5i sellest suurem.<\/p>\n<h2><strong>19 L\u00fclitage funktsioon delay_key_write sisse<\/strong><\/h2>\n<p>Delay_key_write on vaikimisi V\u00c4LJA l\u00fclitatud. Sellel on p\u00f5hjust. Kui teil tekkis projekti keskel krahh, v\u00f5ib teie andmebaas rikkuda.<\/p>\n<p>Niisiis, miks soovite selle sisse l\u00fclitada? P\u00f5hjus on lihtne. Kuna delay_key_write tagab, et andmebaas ei loputa MyISAM-i v\u00f5tmefaili p\u00e4rast iga kirjutamist. Seega, kui teete l\u00e4hitulevikus uue kirjutamise, s\u00e4\u00e4state \u00fcsna palju aega.<\/p>\n<p>Siin on veel \u00fcks lahe n\u00e4pun\u00e4ide, mille valisime MySQL-i parimate tavade hulgast. Funktsiooni delay_key_write sissel\u00fclitamine on iga versiooni puhul erinev. Et n\u00e4ha, kuidas see konkreetses versioonis sisse l\u00fclitada, vaadake ametlikku MySQL-i saidi juhendit.<\/p>\n<h2><strong>20 Vigade eraldamiseks kasutage Stack Trace&#8217;i<\/strong><\/h2>\n<p>J\u00e4rgides neid MySQL-i parimaid tavasid, on see n\u00e4pun\u00e4ide laenatud Sky SQL-ist, kuna see on lihtsalt liiga lihtne ja liiga mugav, et seda v\u00e4lja j\u00e4tta.<\/p>\n<p>MySQL-i stack_trace&#8217;i saab kasutada erinevate vigade eraldamiseks. Selle asemel, et uurida k\u00f5iki v\u00f5imalikke kasutusviise, v\u00f5iks programmeerija arvestada sellega, kui kergesti v\u00f5ib nullkursor teie koodi rikkuda.<\/p>\n<p>Selle Sky SQL-i n\u00e4pun\u00e4idetega muutub tuvastamine, j\u00e4lgimine ja parandamine palju lihtsamaks.<\/p>\n<h2><strong>21 MySQL ROOT-parooli muutmine<\/strong><\/h2>\n<p>ROOT-parooli muutmine v\u00f5ib tunduda elementaarne, kuid teadmine, kuidas seda teha, on sama oluline nii teie koduse operatsioonis\u00fcsteemi kui ka MySQL-i serverite jaoks.<\/p>\n<p>M\u00f5nikord juhtub, et liiga innukad algajad ja hajameelsed kogenud kasutajad ei saa aru, miks nad ei saa teatud seadeid muuta ja tagastavad vead. See v\u00f5ib olla sama lihtne kui anda endale ROOT-juurdep\u00e4\u00e4s. Kasutaja ei peaks seda isegi googeldama.<\/p>\n<p>Siin on, kuidas seadistada ROOT-parool ja kuidas muuta kasutaja ROOT-parooli:<\/p>\n<p><code>\/\/Straightforward MySQL 101 $mysqladmin -u rootpassword [Type in selectedpassword] \/\/Changingusers ROOT password $mysqladmin -u root -p [type oldpassword] newpass [hit enter and type new password. Pressenter] \/\/Use mysqlsqlcommand $mysql -u root -p \/\/prompt \"mysql&gt;\" pops up. Enter: $use MySQL; \/\/Enter usernameyouwant to change the password for $update user set password=PASSWORD (Type new PasswordHere) where User = 'username'; \/\/Don'tforget the previoussemicolon, nowreload the settings for the user'sprivileges $flush privileges; $quit<\/code><\/p>\n<h2><strong>22 Parandage oma konfiguratsioonifailid<\/strong><\/h2>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-206970-61e8d4b96bb8a.jpg\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-206970-61e8d4b96bb8a.jpg\" alt=\"22 MySQL-i parimat tava, mida arendajana 2019. aastal j\u00e4rgida\" ><\/a><\/p>\n<p>MySQL Tuner on Perli skript, mis v\u00f5ib teie toimivust kuidagi optimeerida, soovitades konfiguratsioonifailides muudatusi.<\/p>\n<p>Kui m\u00f5ned MySQL-i n\u00e4pun\u00e4ited ja nipid on h\u00e4mmastavalt mugavad, on sellised t\u00f6\u00f6riistad nagu MySQL Tuner jumala kingitus, mis v\u00e4\u00e4rib kuulumist oma kategooriasse.<\/p>\n<p>See on midagi, mida saavad kasutada nii algajad kui ka profid. MySQL Tuner ei ole MySQL-i jaoks spetsiifiline n\u00e4pun\u00e4ide, seega saab rakendada mitmesuguseid n\u00e4pun\u00e4iteid ja modifikatsioone. Mida rohkem te seda kasutate, seda rohkem n\u00e4pun\u00e4iteid saate \u00f5ppida enda tarbeks rakendama.<\/p>\n<p>Esmapilgul v\u00f5ib see tunduda hirmutav, kuid just seet\u00f5ttu leiate projekti ametlikult kodulehelt manuaali \u2013man db ja k\u00f5ik m\u00e4rkmed, vajaliku lugemise ja seaded. K\u00f5ige selle juures peaks MySQL Tunerist kiiresti saama teie peamine t\u00f6\u00f6riist MySQL-i kiirendamiseks ja konfiguratsioonifailide testimiseks.<\/p>\n<h2><strong>M\u00f5tted MySQL-i parimate tavade kohta<\/strong><\/h2>\n<p>Arvutiteaduse maailmas on MySQL kahtlemata \u00fcks t\u00e4htsamaid ja m\u00f5jukamaid programme, mis kunagi ilmunud on. See on nii kaasahaarav ja mitmek\u00fclgne, et just siis, kui tundub, et k\u00f5ik v\u00f5imalikud nipid ja otseteed on avastatud, annab keegi teine \u200b\u200buue argumendi v\u00f5i seadistuse uue v\u00f5imaluse kasutada.<\/p>\n<p>Oleme v\u00e4lja toonud ainult MySQL-i parimad tavad, mida k\u00f5ik peaksid teadma. Kuid mida rohkem te MySQL-i kasutate, seda rohkem te neid kasutate. Saate SQL-i veebis harjutada ja endale SQL-teste seada. Seej\u00e4rel t\u00f6\u00f6tate v\u00e4lja oma nipid ja leiate oma parimad n\u00e4pun\u00e4ited, millele saate tugineda, n\u00e4iteks SQL-i piiramine, SQL-i rea number, ja m\u00f5istate, miks peaksite MySQL-i valima.<\/p>\n<p>Kui teile meeldis lugeda seda MySQL-i parimaid tavasid k\u00e4sitlevat artiklit, peaksite lugema ka j\u00e4rgmist.<\/p>\n<ul>\n<li><a href=\"https:\/\/wpdatatables.com\/wordpress-lightbox-plugins-you-should-know-of\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">WordPressi valguskasti pistikprogrammid, mida peaksite teadma<\/a><\/li>\n<li><a href=\"https:\/\/wordpress.mediadoma.com\/et\/wordpressi-migratsiooni-pistikprogrammi-valikud-veebisaidi-teisaldamiseks\/\" title=\"WordPressi migratsiooni pistikprogrammi valikud veebisaidi teisaldamiseks\">WordPressi migratsiooni pistikprogrammi valikud veebisaidi teisaldamiseks<\/a><\/li>\n<li><a href=\"https:\/\/wordpress.mediadoma.com\/et\/kuidas-lisada-instagrami-wordpressi\/\" title=\"Milline neist WordPressi Instagrami pistikprogrammide valikutest on teie jaoks parim?\">Milline neist WordPressi Instagrami pistikprogrammide valikutest on teie jaoks parim?<\/a><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/wpdatatables.com\" class=\"external external_icon\">wpdatatables.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>See artikkel tutvustab m\u00f5ningaid MySQL-i parimaid tavasid. Nende abil saate harjutada SQL-i ja m\u00e4\u00e4rata endale m\u00f5ned SQL-harjutused. Sobrama!<\/p>\n","protected":false},"author":1,"featured_media":206971,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[718,833,842,863],"tags":[1165],"class_list":["post-226016","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-arendaja","category-juhend-algajatele","category-opetused","category-wordpress-4","tag-affiai-et"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/posts\/226016","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/comments?post=226016"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/posts\/226016\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/media\/206971"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/media?parent=226016"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/categories?post=226016"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/tags?post=226016"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}