/ / "Úskalia" Príkazy DML aktualizujú MySQL

Úskalia MySQL Aktualizácia príkazov DML

Každý programátor, ktorý musel pracovať s databázami, narazil na operátorov DML (za. z angličtiny - „jazyk manipulácie s údajmi“) ako napr vybrať, Vložte, Odstrániť a Aktualizácia. Prostredie MySQL tiež používa všetky vyššie uvedené príkazy vo svojom arzenáli.

Títo operátori logicky hovoria o svojichzadanie - výber záznamov, vkladanie nových hodnôt, aktualizácia existujúcich údajov, úplné alebo podľa stanovených podmienok, výmaz informácií v databáze. V teoretických materiáloch výcviku je podrobne popísaný princíp činnosti každého príkazu a ich syntax. Nikde však nie sú zmienky o ťažkostiach, ktoré môžu v praxi počas používania vzniknúť. Tento materiál bude venovaný zváženiu niektorých z nich.

vložiť aktualizáciu mysql vybrať

Stručný prehľad operátorov DML (príloha)

Predtým, ako budete pokračovať, je potrebné ešte raz podrobnejšie pripomenúť účel každej z funkcií. Nás budú podrobnejšie zaujímať dvaja operátori: Vložte a Aktualizácia, pretože práve od nich vznikajú hlavné ťažkosti pri spracovávaní veľkého množstva údajov.

aktualizácia vloženia mysql

Musíte začať príkazom Vložte, a potom plynulo prejsť na Aktualizácia. MySQL systém, ako každý iný moderný DBMS, využíva túto operáciu Vložte pridať nové záznamy k existujúcimdatabázové tabuľky. Syntax pre túto operáciu je veľmi jednoduchá a jednoduchá. Obsahuje zoznam polí, do ktorých sa budú hodnoty zadávať, cieľ - názov tabuľky - a samotný zoznam zadaných údajov. Zakaždým, keď spustíte príkaz Vložte databáza sa aktualizuje o nové hodnoty.

Aktualizácia vyhlásenia

V praxi však dosť často existujúsituácie, že pre určitý súbor údajov je potrebné aktualizovať jednu alebo viac hodnôt atribútov. Ako príklad môžeme uviesť situáciu, keď podnik prešiel reformou s ďalším premenovaním hlavných oddelení. V takom prípade je potrebné vykonať zmeny pre každé oddelenie. Ak sa zmenia iba mená, problém sa vyrieši veľmi rýchlo. Ak sa ale zmení kódovanie každej zložky celej výroby, čo spravidla slúži ako primárny kľúč, potom to zase znamená zmeny v informáciách a pre každého zamestnanca.

aktualizovať mysql

Na vyriešenie posudzovaného problému je možné podať žiadosť Operátor DML - Aktualizácia. MySQL-server pracujúci s veľkým počtom záznamov,pomocou vyhlásenia o aktualizácii vykoná požadovanú požiadavku a problém vyrieši. Ale niekedy počas aktualizácie nastanú ťažkosti, ktoré nie sú celkom jasné a ťažko vysvetliteľné. O problémoch s aktualizáciou záznamov sa bude diskutovať neskôr.

To málo, čo sa hovorí teoreticky ...

Príkaz Aktualizovať, ako je uvedené vyššie,slúži na aktualizáciu existujúcich záznamov v tabuľke. V praxi však klienti pristupujúci k databázovým serverom nie vždy vedia, či konkrétna množina údajov v tabuľkách existuje alebo nie. Predbežná kontrola dostupnosti údajov v databáze pre následné aktualizácie vedie k časovým nákladom a zbytočným schopnostiam servera.

Aby sa tomu zabránilo, poskytuje systém DBMS špeciálny dizajn MySQL - vložte * aktualizáciuv ktorom môže vložka alebo aktualizáciabežať nezávisle na sebe. To znamená, že keď je v tabuľke záznam o určitej podmienke, dôjde k aktualizácii. Ak pre príslušnú podmienku nenájdeme žiadne údaje, server MySQL bude schopný vykonať požiadavku na pridanie údajov.

Aktualizácia údajov, keď existujú duplikáty

Dôležitá súčasť toho Vložte-dotaz v systéme správy databázy MySQL - „Pri aktualizácii duplicitných kľúčov“ konzola. Úplná syntax žiadosti je nasledovná: “vložte do hodnoty test_table (Employer_id, Name) hodnoty (1, "Abramov") pri aktualizácii duplikátu kľúča last_modified = NOW ();".

MySQL o aktualizácii duplicitných kľúčov

Na takúto požiadavku sa dá zvyknúťregistrácia akcií zamestnancov, napríklad určenie času prekročenia kontrolného bodu podniku, po ktorom nasleduje počítanie času prestávky a identifikácia meškaní. Aby ste do tabuľky neurobili viac záznamov, stačí viesť záznamy o každom zamestnancovi s neustálou aktualizáciou. Umožňuje vám to návrh duplikátu kontroly.

Vlastne o problémoch ...

Vzhľadom na vyššie uvedený príklad registrácie akcií zamestnancov na kontrolnom mieste je použitie samorastu (auto_prírastok) polia, ktoré sa bežne používajú na vyplnenie hodnôt primárneho kľúča (primárny_kľúč). Pri použití príkazu Aktualizácia MySQL v stavebníctve s Vložte auto_prírastok, polia sa neustále zväčšujú.

Podobne sa všetko stane, keďak sa nájdu duplikáty, použije sa náhradný konštrukt. Hodnota „automatického prírastku“ sa zvýši, aj keď to nie je potrebné. Z tohto dôvodu existujú problémy s chýbajúcimi hodnotami alebo prekročením rozsahu, ktoré následne vedú k poruchám systémov správy databáz.

S najväčšou pravdepodobnosťou spôsobí problém

Je potrebné brať do úvahy popísaný problém Web- vývojári, pretože je to najbežnejšie v systémoch s viacerými používateľmi (internetové stránky, portály atď.), keď sa v systéme vykonáva veľké množstvo postupov Vložte a Aktualizujte MySQL.

PHP-k databáze sa pristupuje veľmi často. Preto dosiahnutie maximálnej hodnoty poliami definovanými ako Automatický prírastok, sa stane rýchlo a pri analýze problémov, ktoré sa vyskytli, nebude možné okamžite zistiť dôvody.

 aktualizovať mysql php

Preto sa vývojárom odporúča, aby starostlivo využili použitie konštruktu na duplikáte kľúča v tíme aktualizácia mysql. vyberte - dotazy pri prístupe na databázový serverbude fungovať bez chýb, ale pridávanie nových záznamov do databázy je plné nepríjemných situácií, ktoré následne vedú k vážnym problémom. Alternatívne sa odporúča, aby polia s automatickým prírastkom najskôr skontrolovali existenciu záznamov a potom ich aktualizovali.

páčilo sa:
0
Populárne príspevky
Duchovný rozvoj
jedlo
y