Co je SMAZAT Dotaz?
příkaz MySQL DELETE se používá k odstranění řádků, které již nejsou vyžadovány z databázových tabulek. Odstraní celý řádek z tabulky a vrátí počet smazaných řádků. Příkaz Delete se hodí k odstranění dočasných nebo zastaralých dat z databáze.
smazat dotaz v MySQL může odstranit více než jeden řádek z tabulky v jediném dotazu., To se ukazuje jako výhody při odstraňování velkého počtu řádků z databázové tabulky.
po odstranění řádku v řádku MySQL nelze obnovit. Proto se důrazně doporučuje provést zálohování databáze před odstraněním jakýchkoli dat z databáze. To vám umožní obnovit databázi a zobrazit data později, pokud to bude nutné.,
Jak chcete-li Odstranit řádek v MySQL
Chcete-li odstranit řádek v MySQL, ODSTRANIT Z prohlášení se používá:
DELETE FROM `table_name` ;
- DELETE FROM `table_name` říká MySQL server odstranit řádky z tabulky ..
- je volitelný a používá se k vložení filtru, který omezuje počet řádků ovlivněných dotazem MySQL DELETE row.
Pokud klauzule WHERE není použita v dotazu MySQL DELETE, budou všechny řádky v dané tabulce smazány.,
Příklad MySQL Delete Query
předtím, Než jsme jít víc do detailů diskuse příkaz ODSTRANIT, pojďme vložit několik ukázkových dat, do kina stůl do práce.
provedení výše uvedeného skriptu přidá do tabulky filmy tři (3) filmy. Než půjdeme dál do naší lekce, dáme všechny filmy do našeho stolu. Níže uvedený skript to dělá.
SELECT * FROM `movies`;
provedení výše uvedeného skriptu nám dává následující výsledky.,
movie_id itle director year_released category_id 1 Pirates of the Caribean 4 Rob Marshall 2011 1 2 Forgetting Sarah Marshal Nicholas Stoller 2008 2 3 X-Men NULL 2008 NULL 4 Code Name Black Edgar Jimz 2010 NULL 5 Daddy's Little Girls NULL 2007 8 6 Angels and Demons NULL 2007 6 7 Davinci Code NULL 2007 6 9 Honey mooners John Schultz 2005 8 16 67% Guilty NULL 2012 NULL 18 The Great Dictator Chalie Chaplie 1920 7 19 sample movie Anonymous NULL 8 20 movie 3 John Brown 1920 8
předpokládejme, že videotéka Myflix si již nepřeje pronajímat „velkého diktátora“ svým členům a chtějí jej odstranit z databáze. Jeho ID filmu je 18, můžeme použít níže uvedený skript k odstranění jeho řádku z tabulky filmů.
DELETE FROM `movies` WHERE `movie_id` = 18;
Provádění výše uvedený skript v MySQL WorkBench proti Myflix odstraní film s id 18 z tabulky databáze.
podívejme se na aktuální stav tabulky filmů.,
SELECT * FROM `movies`;
movie_id title director year_released category_id 1 Pirates of the Caribean 4 Rob Marshall 2011 1 2 Forgetting Sarah Marshal Nicholas Stoller 2008 2 3 X-Men NULL 2008 NULL 4 Code Name Black Edgar Jimz 2010 NULL 5 Daddy's Little Girls NULL 2007 8 6 Angels and Demons NULL 2007 6 7 Davinci Code NULL 2007 6 9 Honey mooners John Schultz 2005 8 16 67% Guilty NULL 2012 NULL 19 sample movie Anonymous NULL 8 20 movie 3 John Brown 1920 8
POZNÁMKA:
- film s id 18 nebyl návrat ve výsledku dotazu sadu.
- nelze odstranit jeden sloupec tabulky. Můžete odstranit celý řádek.
řekněme, že máme seznam filmů, které chceme odstranit . Můžeme použít klauzuli WHERE spolu s IN.
DELETE FROM `movies` WHERE `movie_id` IN (20,21);
provedení výše uvedeného skriptu odstraní filmy s IDs 20 a 21 z naší tabulky filmů.,
shrnutí
- příkaz delete se používá k odstranění dat, která již nejsou vyžadována z tabulky.
- „where clause“se používá k omezení počtu řádků ovlivněných dotazem DELETE.
- jakmile jsou data smazána, nelze je obnovit, proto důrazně doporučujeme provést zálohy před odstraněním dat.