Kwerenda usuwająca w widoku SQL

Kwerenda usuwająca  w kodzie SQL zaczyna się zawsze od słów DELETE …. SET
Pełen kod SQL takiej kwerendy można podejrzeć w widoku SQL projektu kwerendy:

kliknij, aby powiększyć
DELETE TabelaKsiazki.NumerKatalogowy, TabelaKsiazki.Autor, TabelaKsiazki.Tytul, TabelaKsiazki.Cena, TabelaKsiazki.Dzial, TabelaKsiazki.DataP, TabelaKsiazki.Bestseller
FROM TabelaKsiazki;

Cała procedura VBA uruchamiająca taką kwerendę może wyglądać tak:

Public Sub MojaProcedura()
Dim Kwera As String
Kwera = „DELETE TabelaKsiazki.NumerKatalogowy, ” & _
„FROM TabelaKsiazki;”

DoCmd.SetWarnings False
DoCmd.RunSQL Kwera
DoCmd.SetWarnings True
End Sub

We wpisie na blogu  może to różnie wyglądać, ale na wszelki wypadek zwracam uwagę na łamanie linii w zapisie kodu SQL w edytorze VBA – jest to ciąg tekstowy, więc koniec linii musi być zakończony znakami & _ 
(w środku jest spacja).

No i to co ważne – w ten sposób po uruchomieniu kwerendy – usuwane są wszystkie rekordy w tabeli. Takie operacje w bazie raczej rzadko się zdarzają. Kwerenda usuwająca (i nie tylko) jest stosowana raczej w formie kwerendy parametrycznej, gdy usuwane są tylko wybrane rekordy tabeli.


Kurs SQL w analizie danych - zaawansowane techniki

 

Kwerenda usuwająca

Kwerenda usuwająca to typ kwerendy funkcjonalnej służącej do usuwania rekordów w tabeli.

kliknij, aby powiększyć

Stosuje się ją w celu usuwania rekordów z tabeli.
Tak jak wszystkie inne kwerendy – tworzymy ją w widoku projektu. Chcąc usunąć rekordy  – trzeba uruchomić kwerendę w widoku projektu lub otworzyć ją na pasku nawigacji.  I jak w przypadku każdej kwerendy funkcjonalnej  pojawi się komunikat z ostrzeżeniem  o uruchomieniu. Można go ominąć np.makrem:
Makro wyłączające ostrzeżenia

W okienku nawigacji kwerendy dołączające są oznaczone specjalnym symbolem:-


Kurs Access - kwerendy

 

Kwerenda aktualizująca w widoku SQL

Kwerenda aktualizująca  w kodzie SQL zaczyna się zawsze od słów UPDATE …. SET
Pełen kod SQL takiej kwerendy można podejrzeć w widoku SQL projektu kwerendy:

kliknij, aby powiększyć
UPDATE TabelaKsiazki SET TabelaKsiazki.Cena = 0.9*[CENA];

Cała procedura uruchamiająca taką kwerendę dołączającą:

Public Sub MojaProcedura()
Dim Kwera As String
Kwera = „UPDATE TabelaKsiazki SET ” & _
„TabelaKsiazki.Cena = 0.9*[CENA];”

DoCmd.SetWarnings False
DoCmd.RunSQL Kwera
DoCmd.SetWarnings True
End Sub

We wpisie na blogu  może to różnie wyglądać, ale na wszelki wypadek zwracam uwagę na łamanie linii w zapisie kodu SQL w edytorze VBA – jest to ciąg tekstowy, więc koniec linii musi być zakończony znakami & _  (w środku jest spacja).


Kurs SQL w analizie danych - zaawansowane techniki

 

Kwerenda aktualizująca

Kwerenda aktualizująca to typ kwerendy funkcjonalnej. W wyniku jej działania można zmienić wartość pól wybranych rekordów.

kliknij, aby powiększyć

Załóżmy, że chcemy obniżyć o 10% wszystkie ceny książek w tabeli.
W siatce kwerendy wybieramy potrzebne pola i na karcie zmieniamy typ kwerendy na Aktualizuj.
Automatycznie pojawi się nowa linia, gdzie wpisujemy nową wartość danej kolumny. Np. nowa cena ma wynieść 0,9 * [Cena] (w nawiasie kwadratowym, gdyż odnosimy się do kolumny o nazwie Cena) :

kliknij, aby powiększyć

Chcąc w ten sposób zaktualizować rekordy  – trzeba uruchomić kwerendę w widoku projektu lub otworzyć ją na pasku nawigacji. Każde kolejne jej uruchomienie – spowoduje kolejną aktualizację. Ponieważ to kwerenda funkcjonalna – pojawi się komunikat z ostrzeżeniem  o uruchomieniu. można go ominąć np.makrem:
Makro wyłączające ostrzeżenia

W okienku nawigacji kwerendy dołączające są oznaczone specjalnym symbolem:-

kliknij, aby powiększyć

Kurs Access - kwerendy

 

Kwerenda dołączająca w widoku SQL

Kwerenda dołączająca w kodzie SQL zaczyna się zawsze od słów INSERT INTO ….
Pełen kod SQL takiej kwerendy można podejrzeć w widoku SQL projektu kwerendy:

kliknij, aby powiększyć

Wygląda to np. tak:

INSERT INTO TabelaArchiwum ( NumerKatalogowy, Autor, Tytul, Cena, Dzial, Bestseller, DataArchiwizacji )
SELECT TabelaKsiazki.NumerKatalogowy, TabelaKsiazki.Autor, TabelaKsiazki.Tytul, TabelaKsiazki.Cena, TabelaKsiazki.Dzial, TabelaKsiazki.Bestseller, Date() AS DataArchiwum
FROM TabelaKsiazki;

Cała procedura uruchamiająca taką kwerendę dołączającą:

Public Sub MojaProcedura()
Dim Kwera As String
Kwera = „INSERT INTO TabelaArchiwum ( NumerKatalogowy,  ” & _
„Autor, Tytul, Cena, Dzial, Bestseller, DataArchiwizacji )  ” & _
„SELECT TabelaKsiazki.NumerKatalogowy, TabelaKsiazki.Autor,  ” & _ „TabelaKsiazki.Tytul, TabelaKsiazki.Cena, ” & _
„TabelaKsiazki.Dzial, TabelaKsiazki.Bestseller, Date() AS DataArchiwum ” & _
„FROM TabelaKsiazki;”
DoCmd.SetWarnings False
DoCmd.RunSQL Kwera
DoCmd.SetWarnings True
End Sub

We wpisie na blogu  może to różnie wyglądać, ale na wszelki wypadek zwracam uwagę na łamanie linii w zapisie kodu SQL w edytorze VBA – jest to ciąg tekstowy, więc koniec linii musi być zakończony znakami & _  (w środku jest spacja).


Kurs SQL w analizie danych - zaawansowane techniki