6.4.5. Modyfikowanie danych – polecenia INSERT

Transkrypt

6.4.5. Modyfikowanie danych – polecenia INSERT
Pantone 3285
6.4. J´zyk SQL
6.4.5. Modyfikowanie danych – polecenia INSERT,
UPDATE, DELETE
Kolejnym krokiem, po utworzeniu tabel bazy danych, jest
modyfikowanie danych. Oznacza to wprowadzanie, poprawianie i usuwanie danych. Polecenie dodawania nowego
wiersza (rekordu) do tabeli ma postać
INSERT [LOW_PRIORITY] INTO nazwa_tabeli
[(kolumny)] VALUES (wartoÊci)
Jak to zrobiç
Modyfikowanie danych w bazie danych
MySQL.
gdzie nazwa_tabeli jest nazwą tabeli, w której tworzymy wiersz,
kolumny są nazwami kolumn tabeli oddzielonymi przecinkami (jeśli jest ich
więcej niż jedna), do których wprowadzamy wartości,
wartoÊci są wartościami wprowadzanymi do wymienionych kolumn, oddzielonymi przecinkami,
LOW_PRIORITY to opcjonalna klauzula o znaczącej roli, jeśli z bazy korzysta więcej niż jeden użytkownik. Może bowiem wystąpić kolizja, gdy np.
dwóch użytkowników równocześnie chce modyfikować tę samą tabelę. Omawiana klauzula wymusza wstrzymanie dopisania nowego wiersza do tabeli,
gdy korzysta z niej inny użytkownik. Ta sama klauzula powoduje, że rozpoczęcie dopisywania wiersza blokuje tabelę dla wszystkich innych użytkowników aż do chwili zakończenia tej operacji.
Nowy wiersz do tabeli Klasa wprowadzamy poleceniem:
INSERT INTO Klasa (nazwakl) VALUES (”Ia”);
Wymieniamy tylko kolumnę nazwakl, gdyż w definicji tabeli Klasa kolumna idklasy ma przypisaną
klauzulę AUTO_INCREMENT, czyli wartości w tej kolumnie mogą być wprowadzane automatycznie. Brak
nazwy kolumny w poleceniu INSERT powoduje zadziałanie klauzuli AUTO_INCREMENT, jeśli wystąpiła w opisie pola.
Rysunek 6.20. Wyświetlenie zaNa rysunku 6.20 pokazano przykładową zawartość wartości tabeli Klasa w MySQL
tabeli Klasa.
Załóżmy, że bazę Gielda tworzymy dla liceum ogólnokształcącego. Wówczas ósmy wiersz jest błędny. Ponadto szósty wiesz zawiera prawdopodobnie
pomyłkę w nazwie klasy; przyjmijmy, że IIIa to nazwa prawidłowa. A zatem
należy usunąć wiersz ósmy i poprawić dane w wierszu szóstym.
Do usuwania wierszy z tabeli służy polecenie
DELETE [LOW_PRIORITY] FROM nazwa_tabeli [WHERE warunek]
gdzie nazwa_tabeli jest nazwą tabeli, z której chcemy usunąć wiersze spełniające
warunek podany po klauzuli WHERE. Jeśli pominiemy tę klauzulę, to zostaną
www.wsip.com.pl
237