Inne działy

 

 

MySQL modyfikowanie i usuwanie tabel

 

Zmiana struktury tabel

Przy użyciu instrukcji ALTER TABLE można zmieniać nazwy tabel dodawać i usuwać kolumny, zmieniać typ kolumny i wykonywać jeszcze inne rzeczy.

Przykładowo jeśli chcemy dodać kolumnę telefon do naszej tabeli pracownicy, którą utworzyliśmy w poprzedniej lekcji należy napisać następującą instrukcję:

ALTER TABLE pracownicy

ADD telefon CHAR (12);

Aby dodać kilka kolumn jednocześnie, rozdziel ich definicję przecinkami:

ALTER TABLE pracownicy
->ADD ulica VARCHAR(30)
->ADD miasto VARCHAR(30)
->ADD kod_pocztowy CHAR(5);

 Poniżej składnia polecenia ALTER TABLE może nie co zawiła ale z czasem gdy będziemy nabierali wprawy w pracy z językiem SQL i różnymi bazami danych wszystko stanie się łatwiejsze:

 

ALTER [IGNORE] TABLE table_name options[, options...]
options:
ADD [COLUMN] create_definition [FIRST | AFTER col_name ]
or ADD [COLUMN] (create_definition, create_definition,...)
or ADD INDEX [index_name] (index_col_name,...)
or ADD PRIMARY KEY (index_col_name,...)
or ADD UNIQUE [index_name] (index_col_name,...)
or ADD FULLTEXT [index_name] (index_col_name,...)
or ADD [CONSTRAINT symbol] FOREIGN KEY [index_name] (index_col_name,...)
[reference_definition]
or ALTER [COLUMN] col_name {SET DEFAULT literal | DROP DEFAULT}
or CHANGE [COLUMN] old_col_name create_definition
[FIRST | AFTER column_name]
or MODIFY [COLUMN] create_definition [FIRST | AFTER col_name]
or DROP [COLUMN] col_name
or DROP PRIMARY KEY
or DROP INDEX index_name
or DISABLE KEYS
or ENABLE KEYS
or RENAME [TO] new_table_name
or ORDER BY col_name
or table_options

 Większość z tych opcji jest oczywista. Niektóre poniżej wyjaśnimy:

  • CHANGE i MODIFY są takie same, pozwalają one na zmianę definicji kolumny lub jej zmianę w tabeli
  • DROP COLUMN usuwa kolumnę z tabeli na stałe, jesli tabela zawiera dane wszystkie dane z kolumny zostaną utracone.
  • DROP PRIMARY KEY i DROP INDEX usuwają klucz podstawowy lub indeks kolumny.
  • DISABLE i ENABLE KEYS  wyłącza i włącza aktualizowanie indeksów dla tabeli tylko dla MyISAM
  • Klauzula RENAME umożliwia zmianę nazwy tabeli do nowej.

 

Usuwanie tabel

 Aby usunąć tabelę z bazy danych, można użyć instrukcji DROP TABLE:

 DROP [TEMPORARY] TABLE [IF EXISTS] nazwa_tabeli [,nazwa_tabeli, ...]

 Słowo kluczowe temporary służy do kasowania tabel tymczasowych. MySQL pozwala na usuwanie wielu tabel jednocześnie poprzez wymienienie ich nazw i rozdzielenie ich przecinkami. IF EXISTS jest wykorzystywane aby uniemożliwić usunięcie tabeli, która nie istnieje w bazie danych.

 

Usunięcie danych z tabeli

W niektórych przypadkach, możesz chcieć usunąć wszystkie dane z tabeli w sposób szybki i zresetować wszystkie ustawienia auto increment. MySQL obsługuje polecenie SQL TRUNCATE TABLE, które może to wykonać, poniżej składnia tego polecenia:

TRUNCATE TABLE nazwa_tabeli

Należy pamiętać o pewnych zasadach przed użyciem instrukcji TRUNCATE TABLE:

  • TRUNCATE TABLE pozwala usunąć i ponownie przywrócić tabelę i jest znacznie szybsze od polecenia DELETE TABLE. Nie jest to jednak transakcja bezpieczna.
  • Liczba usuniętych wierszy nie jest zwracana jak w poleceniu SQL DELETE TABLE.
  • ON DELETE wyzwalacze nie są wywoływane ponieważ TRUNCATE nie używa DELETE.

 

 

 

 

Zobacz nasze wszystkie kursy

WWW


HTML
HTML - Znaczniki
CSS - Tutorial
CSS - Selektory
PHP
JavaScript

XML

XSLT

Bazy danych


SQL
SQLite
MySQL
PostgreSQL

 

 

Programowanie


C
C++
C#
Java
VisualBasic
Python

Linux


Podstawy Linuxa
Bash
Linuks artykuły

Windows


Excel funkcje
Windows wskazówki
Outlook

Pozotałe działy


Programy
Rozrywka

 

 

 

This email address is being protected from spambots. You need JavaScript enabled to view it.