ArvutidAndmebaasid

"Lõkse" DML-Team värskendamine MySQL

Iga programmeerija, kes pidid töötama andmebaaside silmitsi DML-operaatorid (tõlgitud inglise keelest - .. "Data manipuleerimine keel"), näiteks valida, sisestada, Kustuta ja Update. MySQL-transport kasutab ka oma arsenali kõik eespool käske.

Need avaldused on loogiliselt räägime tema nimetamist - valib dokumente, sisesta uued väärtused, ajakohastada olemasolevaid andmeid, täielik või vastavalt kindlaksmääratud tingimustel eemaldamist andmebaasi teavet. Teoreetiline õppematerjalide kirjeldatakse üksikasjalikult tööpõhimõte iga käsu ja nende süntaks, kuid pole kuskil viited raskused, mis võivad tekkida praktikas kasutamise ajal. See materjal on pühendatud arvesse mõned neist.

Lühidalt DML-avaldused (Insert)

Enne edasi, on vaja taas meenutada lisateavet eesmärgil iga funktsiooni. Meil on kaks operaatorit üksikasjalikumat: Insert ja Update, sest see sõltub nende tuletada peamised raskused töötlemise suurte andmemahtude.

Peate alustama käsu Insert ja siis järk-järgult liikuda Update. MySQL süsteemi, nagu iga teine kaasaegne andmebaasi kasutada Insert operatsiooni lisada uusi andmeid olemasolevate tabelite andmebaasi. Süntaks see toiming on väga lihtne ja arusaadav. See sisaldab loetelu valdkondades, mis on tehtud väärtused, sihtkoha - tabeli nimi, - ja kohe kasutusele andmete loetelu. Iga kord, kui sooritate Insert andmebaasi uuendatakse uute väärtustega.

ajakohastatud aruanne

Kuid praktikas üsna sageli on olukordi, et mõned andmekogumit ühe või mitme atribuudi väärtusi tuleb ajakohastada. Näiteks olukorras, kus ettevõte oli reformi edasise ümbernimetamine peamised osakonnad. Sel juhul on vaja teha muudatusi iga osakond. Kui ainult nime muutmine, siis probleemi saab lahendada väga kiiresti. Siiski, kui muuta kodeerimine iga komponendi kogu tootmise, mis tavaliselt toimib primaarvõti, mis on omakorda toob kaasa muudatusi teavet ja iga töötaja.

Update - DML-ettevõtja saab rakendada seda probleemi lahendada. MySQL- server, mis töötab suur hulk kirjeid, abiga uuendatud avaldus, täita nõutud päringu ja probleemi lahendada. Aga mõnikord tekkida uuendatud ei ole päris selge ja raske seletada keerukust. See on see, mida põhjustab raskusi dokumentide ajakohastatud, arutatakse täiendavalt.

Mis vähe öeldud teooria ...

Uuenda Team, nagu eespool märgitud, kasutatakse ajakohastada olemasolevad kirjed tabelis. Kuid praktikas, klientide andmebaasile juurdepääsu serverid ei ole alati teada, seal on teatud hulk andmeid tabelites või mitte. Esialgne kontrollida andmete kättesaadavusele andmebaasi järgnevaks ajakohastamiseks tulemusi aeganõudev ja raiskamine server võimeid.

Selle vältimiseks spetsiaalses andmebaasis MySQL struktuur - Insert * Update kus sisestada või värskendada saab teha üksteisest sõltumatult. See on siis, kui tabelis on kirje eelkõige tingimus, uuendatakse. Kui tingimused loetakse andmed ei leita, MySQL-server on võimeline täitma andmete lisatud taotluse.

Uuenda andmeid, kui on duplikaadid

Oluline osa selles Insert - taotluse MySQL andmebaasi juhtimissüsteemi - «Duplikaatsisule Key värskendamine» eesliide. Täielik päringu süntaksi on järgmine: «lisada test_table (employer_id, nimi) väärtused ( 1 'Abramov") Duplikaatsisule võti uuendatud LAST_MODIFIED = NOW (); ".

Sellise taotluse võib kasutada salvestada tegevust, näiteks määrata ristmik läbipääsu aega ettevõtte järgneb lugedes ajavahemik ja avastamise hilinemine. Et mitte teha tabelis paar arvestust, piisavalt iga töötaja hoida kirjed pidev ajakohastamine. See on korduv kontroll disain võimaldab seda.

Tegelikult probleemid ...

Arvestades ülaltoodud näites registreerimise töötajad tegevus sissepääsu juures, kui probleem on kasutada samouvelichivayuschihsya (auto _ juurdekasv) väljad, mida kasutatakse tavaliselt täita primaarvõti väärtused (esmane _ klahvi). Kui kasutate MySQL värskendamine käsk disain Insert auto _ juurdekasvu, valdkonnas kasvab pidevalt.

Samuti kõike juhtub, kui kasutatakse asendamist ehitus puhul eksemplaris avastamise. "Auto-juurdekasvu" väärtus on suurenenud isegi juhul, kui see ei ole vajalik. Selle tõttu tekivad probleemid ülevoolu pass väärtuste või vahemikud, mille tulemusel hiljem rike andmebaasi juhtimissüsteeme.

Tõenäoliselt probleem

Kirjeldab probleemi tuleb käsitleda Web-arendajad, sest see on kõige tavalisem mitme kasutaja süsteemi (veebilehed, portaalid, ja nii edasi. P.), Kui süsteem käivitatakse suur hulk menetlusi Insert ja värskendamine MySQL.

PHP - kaebuse aluse väga tihti läbi. Seepärast, et saavutada maksimaalne marginaalid, mis on määratletud auto_increment, tekib kiiresti ja analüüsi raskused luua põhjused lihtsalt ei tööta.

Seega arendajad julgustatakse olema tähelepanelik disainilahenduse kasutamise Duplikaatsisule võti käsk mysql uuendada. vali - päringute kui kasutate andmebaasi server töötab veatult, kuid uusi andmeid andmebaasi on tulvil ebameeldivaid olukordi tulevikus kaasa tõsiseid probleeme. Teise võimalusena on soovitatav auto-juurdekasvu väljad esialgu kontrollida oma andmeid ja seejärel hoidke neid ajakohastada.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 et.unansea.com. Theme powered by WordPress.