Uruchamianie kodu SQL

Do uruchamiania  kodów SQL w VBA służy metoda docmdRunSQL

kliknij, aby powiększyć

Metoda ta ma 2 argumenty:

      • SQLStatement – kod SQL, argument wymagany
      • USE Transaction – parametr decydujący o użyciu transakcji. Argument opcjonalny, wartość domyślna True

Metody docmd.RunSQL najczęściej używam do uruchamiania kodu SQL będącego zapisem kwerend funkcjonalnych.Metoda ta ma  duże znaczenie w przypadkach, gdy sam kod SQL jest oparty na kwerendzie parametrycznej, więc trudno ją zdefiniować i zapisać na stałe jako obiekt kwerendy. 


Kurs Access 2013 od podstaw

 

Kwerenda dołączająca

Kwerenda dołączająca to typ kwerendy funkcjonalnej. W wyniku jej działania wybrane rekordy z innej tabeli/kwerendy są dołączane do już istniejącej tabeli.

kliknij, aby powiększyć

Wybieramy potrzebne pola tabeli/kwerendy, które mają być dołączone do innej tabeli, ustalamy kryteria, które rekordy mają tam trafić. Następnie naciskamy przycisk Dołącz.
Automatycznie pojawi się formularz, w którym wskazujemy tabelę docelową:

kliknij, aby powiększyć

Na siatce kwerendy pojawi się od razu linia z nazwami pól docelowej tabeli, do której dołączamy rekordy.

kliknij, aby powiększyć

Część nazw pól może być automatycznie wypełniona, brakujące trzeba ustawić ręcznie:

kliknij, aby powiększyć

Chcąc w ten sposób utworzyć tabelę – trzeba uruchomić kwerendę w widoku projektu lub otworzyć ją na pasku nawigacji..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ć

Przy definiowaniu kwerendy bardzo ważne jest dopasowanie typów danych w kolumnach. Jeżeli np. do pola typu liczba będziemy próbować dołączyć dane typu Tekst – pojawi się błąd. No i oczywiście do pola Autonumerowanie nic nie dodajemy.
Ponowne uruchomienie tej samej kwerendy – powoduje, że ponownie zostaną do niej dodane te same wiersze.

W praktyce ten typ kwerendy często wykorzystuję w projektach aplikacji, głównie do archiwizacji rekordów.


Kurs Access - kwerendy

 

Kwerenda tworząca tabelę

Kwerenda tworząca tabelę to typ kwerendy funkcjonalnej. W wyniku jej działania, na podstawie danych z innej tabeli/kwerendy , tworzona jest nowa tabela.
Tak jak wszystkie kwerendy tworzymy ją w oknie projektu kwerendy:

kliknij, aby powiększyć

Wybieramy potrzebne pola tabeli/kwerendy, które mają być polami nowej tabeli i naciskamy przycisk Utwórz tabelę. Pojawi się formularz, w którym wpisujemy nazwę tworzonej tabeli i naciskamy OK.
Chcąc w ten sposób utworzyć tabelę – trzeba uruchomić kwerendę.
Oczywiście  pojawi się komunikat z ostrzeżeniem  o uruchomieniu. ale można go ominąć np.makrem:
Makro wyłączające ostrzeżenia

W okienku nawigacji kwerendy tworzące tabelę są oznaczone specjalnym symbolem:-

kliknij, aby powiększyć

W praktyce – nie pamiętam, żebym kiedyś wykorzystywała w aplikacjach taką kwerendę. Z reguły utworzenie tabeli jest czynnością jednorazową.
Ponowne uruchomienie tej samej kwerendy – powoduje usunięcie tabeli i ponowne utworzenie tej tabeli.

A tu darmowy kurs wideo:


Procedura VBA wyłączająca ostrzeżenia

kliknij, aby powiększyć

Każda aplikacja stworzona w Accessie powinna działać tak, żeby użytkownik  nie musiał się zastanawiać jak reagować na różnego rodzaju komunikaty systemowe bazy. Jak je wyłączyć w kodzie VBA? . Robimy to za pomocą metody obiektu docmdSetWarnings

kliknij, aby powiększyć

Metoda ta może przyjmować wartość typu Boolean:

      • False – przy wyłączeniu ostrzeżeń
      • True – przy włączeniu ostrzeżeń

Warto tu pamiętać, że jeżeli wyłączamy w kodzie ostrzeżenia, to potem należy je włączyć. Nawet wyjście z procedury nie resetuje  ustawień.

Przykładowy kod może wyglądać tak:

Public Sub MojaProcedura()
DoCmd.SetWarnings False
ciąg instrukcji np. kwerendy funkcjonalne
DoCmd.SetWarnings True
End Sub

 

Egzamin Specjalista MS Access

Makro wyłączające ostrzeżenia

Makro wyłączające ostrzeżenia jest często stosowanym elementem bazy danych. W praktycznym zastosowaniu najczęściej wykorzystywane jest przed uruchamianiem kwerend funkcjonalnych.

kliknij, aby powiększyć

Chcąc utworzyć takie makro wchodzimy na kartę
Tworzenie –> Makro

kliknij, aby powiększyć

W kolejnym kroku, w grupie opcji Pokazywanie/ukrywanie  włączamy naciskamy przełącznik Pokaż wszystkie akcje i dodajemy akcję Ustaw ostrzeżenia.

Następnie wyłączamy ostrzeżenia wybierając Nie.

Kliknij, aby powiększyć.

Potem możemy jako kolejną akcję makra ustawić np. otwieranie kwerendy funkcjonalnej. W ostatnim kroku takiego makra dobrze jednak wstawić powrót do stanu początkowego tj.ustawić ostrzeżenia na włączone.


Kurs Access 2013 od podstaw