DELETE - polecenie używane do usuwania isteniejących w tabeli rekordów.
Postać instrukcji DELETE jest następująca:
DELETE FROM tabela WHERE kolumna=wartosc;
UWAGA!!!
Należy zwrócić uwagę na klauzulę WHERE. Bez jej użycia zostaną usunięte wszystkie rekordy w tabeli. (przykład 2).
Często zachodzi sytuacja, iż chcemy usunąć tylko jeden rekord.
Najlepszym rozwiązaniem w takiej sytuacji jest użycie WHERE określając klucz główny (jest on unikalną wartością - mamy pewność, iż dokładnie jeden rekord
zostanie usunięty).
Dla poniższych przykładów utworzono nową tabelę o nazwie TEST:
CREATE TABLE TEST (
id int,
nazwa VARCHAR2(20)
);
SELECT * FROM TEST;
ID NAZWA
---------------------- --------------------
0 rows selected
Przykład 1.
Na początek, abyśmy mogli usunąć jakiekolwiek wiersze, należy dodać kilka rekordów.
INSERT INTO TEST VALUES('1', 'do usuniecia 1');
1 rows inserted
INSERT INTO TEST VALUES('2', 'do usuniecia 2');
1 rows inserted
SELECT * FROM TEST;
ID NAZWA
---------------------- --------------------
1 do usuniecia 1
2 do usuniecia 2
2 rows selected
DELETE FROM TEST WHERE ID='1';
1 rows deleted
SELECT * FROM TEST;
ID NAZWA
---------------------- --------------------
2 do usuniecia 2
1 rows selected
Przykład 2.
UWAGA!!!
Usuwamy wszytkie rekordy (nie ma określonej klauzuli WHERE).
DELETE FROM TEST
ID NAZWA
---------------------- --------------------
0 rows selected
Postać instrukcji DELETE jest następująca:
DELETE FROM tabela WHERE kolumna=wartosc;
UWAGA!!!
Należy zwrócić uwagę na klauzulę WHERE. Bez jej użycia zostaną usunięte wszystkie rekordy w tabeli. (przykład 2).
Często zachodzi sytuacja, iż chcemy usunąć tylko jeden rekord.
Najlepszym rozwiązaniem w takiej sytuacji jest użycie WHERE określając klucz główny (jest on unikalną wartością - mamy pewność, iż dokładnie jeden rekord
zostanie usunięty).
Dla poniższych przykładów utworzono nową tabelę o nazwie TEST:
CREATE TABLE TEST (
id int,
nazwa VARCHAR2(20)
);
SELECT * FROM TEST;
ID NAZWA
---------------------- --------------------
0 rows selected
Przykład 1.
Na początek, abyśmy mogli usunąć jakiekolwiek wiersze, należy dodać kilka rekordów.
INSERT INTO TEST VALUES('1', 'do usuniecia 1');
1 rows inserted
INSERT INTO TEST VALUES('2', 'do usuniecia 2');
1 rows inserted
SELECT * FROM TEST;
ID NAZWA
---------------------- --------------------
1 do usuniecia 1
2 do usuniecia 2
2 rows selected
DELETE FROM TEST WHERE ID='1';
1 rows deleted
SELECT * FROM TEST;
ID NAZWA
---------------------- --------------------
2 do usuniecia 2
1 rows selected
Przykład 2.
UWAGA!!!
Usuwamy wszytkie rekordy (nie ma określonej klauzuli WHERE).
DELETE FROM TEST
ID NAZWA
---------------------- --------------------
0 rows selected
Brak komentarzy:
Prześlij komentarz