Sloupec je řada buněk v tabulce, která může obsahovat text, čísla a obrázky. Každý sloupec ukládá jednu hodnotu pro každý řádek v tabulce. V této části se budeme zabývat tím, jak přidat nebo odstranit sloupce v existující tabulce.
Jak můžeme přidat sloupec do tabulky MySQL?
MySQL umožňuje ALTER TABULKA PŘIDAT SLOUPEK příkaz pro přidání nového sloupce do existující tabulky. Následující syntaxe k tomu slouží:
ALTER TABLE table_name ADD COLUMN column_name column_definition [FIRST|AFTER existing_column];
Ve výše uvedeném
- Nejprve musíme zadat název tabulky.
- Dále po klauzuli ADD COLUMN musíme zadat název nového sloupce spolu s jeho definicí.
- Nakonec musíme zadat klíčové slovo FIRST nebo AFTER. Klíčové slovo FIRST se používá k přidání sloupce jako prvního sloupce tabulky. Klíčové slovo AFTER se používá k přidání nového sloupce za existující sloupec. Pokud jsme tato klíčová slova neposkytli, MySQL ve výchozím nastavení přidá nový sloupec jako poslední sloupec v tabulce.
Někdy je potřeba přidat více sloupců do stávající tabulky. Potom můžeme použít syntaxi takto:
ALTER TABLE table_name ADD COLUMN column_name1 column_definition [FIRST|AFTER existing_column], ADD COLUMN column_name2 column_definition [FIRST|AFTER existing_column];
Příklad MySQL ADD COLUMN
Pojďme to pochopit pomocí různých příkladů. Zde vytvoříme tabulku s názvem 'Test' pomocí následujících prohlášení:
java bubble sort
CREATE TABLE Test ( Stude_id int AUTO_INCREMENT PRIMARY KEY, Name varchar(55) NOT NULL );
Struktura tabulky vypadá jako na obrázku níže:
Po vytvoření tabulky chceme do tabulky Test přidat nový sloupec s názvem Město. Protože jsme nezadali novou pozici sloupce explicitně za názvem sloupce, MySQL ji přidá jako poslední sloupec.
ALTER TABLE Test ADD COLUMN City VARCHAR(30) NOT NULL;
Dále chceme přidat nový sloupec s názvem Telefonní číslo k Test stůl. Tentokrát explicitně určíme novou pozici sloupce, aby MySQL přidalo sloupec na zadané místo.
ALTER TABLE Test ADD COLUMN Phone_number VARCHAR(20) NOT NULL AFTER Name;
V níže uvedeném výstupu můžeme vidět, že dva sloupce byly úspěšně přidány na zadanou pozici.
abstraktní třída java
Pojďme přidat některá data do tabulky Test pomocí příkaz INSERT jak následuje:
INSERT INTO Test( Name, Phone_number, City) VALUES ('Peter', '34556745362', 'California'), ('Mike', '983635674562', 'Texas');
Bude to vypadat takto.
Předpokládejme, že chceme přidat více než jeden sloupec, (Pobočka, Email) v testovací tabulce. V takovém případě proveďte příkaz následovně:
ALTER TABLE Test ADD COLUMN Branch VARCHAR(30) DEFAULT NULL After Name, ADD COLUMN Email VARCHAR(20) DEFAULT NULL AFTER Phone_number;
Je třeba poznamenat, že sloupcům Pobočka a Email jsou přiřazeny výchozí hodnoty NULA . Tabulka Test však již obsahuje data, takže MySQL bude pro tyto nové sloupce používat hodnoty null.
Záznam můžeme ověřit v testovací tabulce, jak je uvedeno níže:
Pokud omylem přidáme nový sloupec se stávajícím názvem sloupce, MySQL to udělá hodit chybu . Proveďte například níže uvedený příkaz, který způsobí chybu:
nestálé klíčové slovo java
ALTER TABLE Test ADD COLUMN City VARCHAR(30) NOT NULL;
Zobrazí se následující chybová zpráva.
Jak můžeme přejmenovat sloupec v tabulce MySQL?
MySQL umožňuje ZMĚNIT SLOUPEK ZMĚNY TABULKY příkaz změnit starý sloupec na nový název. Následující syntaxe k tomu slouží:
ALTER TABLE table_name CHANGE COLUMN old_column_name new_column_name column_definition [FIRST|AFTER existing_column];
Ve výše uvedeném
- Nejprve musíme zadat název tabulky.
- Dále po klauzuli CHANGE COLUMN musíme zadat název starého sloupce a nový název sloupce spolu s jeho definicí. Musíme zadat definici sloupce, i když se nezmění.
- Nakonec musíme zadat klíčové slovo FIRST nebo AFTER. Je nepovinné určit, kdy potřebujeme změnit název sloupce na konkrétní pozici.
Příklad přejmenování sloupce MySQL
Tento příklad ukazuje, jak můžeme změnit název sloupce v tabulce MySQL:
ALTER TABLE Test CHANGE COLUMN Phone_number Mobile_number varchar(20) NOT NULL;
Tento příkaz změní název sloupce Telefonní číslo s novým jménem Číslo mobilního telefonu v testovací tabulce. Níže uvedený výstup to vysvětluje jasněji.
Jak můžeme vypustit sloupec z tabulky MySQL?
Někdy chceme z tabulky odstranit jeden nebo více sloupců. MySQL umožňuje ALTER TABULKA DOP SLOUPEC příkaz k odstranění sloupce z tabulky. Následující syntaxe k tomu slouží:
ALTER TABLE table_name DROP COLUMN column_name;
Ve výše uvedeném
- Nejprve musíme specifikovat název tabulky ze kterého chceme sloupec odstranit.
- Dále, po PUSTI SLOUPEK klauzule, musíme zadat název sloupce, který chceme z tabulky odstranit. Je třeba poznamenat, že klíčové slovo COLUMN je v klauzuli DROP COLUMN nepovinné.
Pokud chceme odstranit více sloupců z tabulky proveďte následující příkazy:
localdate
ALTER TABLE table_name DROP COLUMN column_1, DROP COLUMN column_2, ......;
Příklad DROP COLUMN MySQL
Tento příklad vysvětluje, jak můžeme odstranit sloupec z tabulky MySQL. Tady si vezmeme stůl 'Test' které jsme vytvořili dříve a vypadají jako na obrázku níže:
pyspark sql
Předpokládejme, že chceme odstranit název sloupce 'Větev' z testovacího stolu. Chcete-li to provést, proveďte následující příkaz:
ALTER TABLE Test DROP COLUMN Branch;
Po úspěšném provedení můžeme ověřit výsledek níže, kde je z tabulky odstraněn sloupec Větev:
V některých případech je nutné z tabulky odstranit více sloupců. K tomu musíme provést následující příkaz:
ALTER TABLE Test DROP COLUMN Mobile_number, DROP COLUMN Email;
Příkaz odstraní oba sloupce. Můžeme to ověřit pomocí dotazů uvedených na obrázku níže.
Před odstraněním sloupce z tabulky si zapamatujte následující klíčové body:
MySQL pracuje s relačními databázemi, kde schéma jedné tabulky může záviset na sloupcích jiné tabulky. Když tedy odstraníme sloupec z jedné tabulky, ovlivní to také všechny závislé tabulky. Při odstraňování sloupce zvažte následující body:
- Když z tabulky odstraníme sloupce, ovlivní to všechny přidružené objekty, jako jsou spouštěče, uložené procedury a pohledy. Předpokládejme, že odstraníme sloupec, který odkazuje ve spouštěči. Po odstranění sloupce se spoušť stane neplatnou.
- Vynechaný sloupec závisí na kódu jiných aplikací, musí se také změnit, což vyžaduje čas a úsilí.
- Když odstraníme sloupec z velké tabulky, ovlivní to výkon databáze během doby odebrání.