OTC - Strona główna

  Download   |  Kontakt   |  Moje konto   |  Wyloguj się  

zalogowany: Gość / Guest




Winflector / Winflector Console
Serwer Mediator ISAM
Mediator - klient Delphi
Mediator - klient xBase/Clipper
Mediator - interfejs COM
Komponenty xHarbour dla Delphi
Interfejs COM dla xHarbour/DBF
Terminal GUI
Terminal Console
Terminal xBase
Jak kupić?
Download
Cennik
 


Rewolucja w świecie MySQL!
Darmowy, nielimitowany Mediator dla MySQL dla aplikacji xHarbour, Harbour oraz Delphi!
Szczegóły w Aktualnościach.
Strona główna  »  Produkty  »  Serwer Mediator ISAM  »  Mechanizmy bazy SQL

Dostęp do mechanizmów bazy danych SQL

Sterownik Mediator nie poprzestaje na zapewnieniu zgodności ze sterownikami DBFNTX i DBFCDX. Ogromną zaletą rozwiązania jest udostępnienie programistom na poziomie języka xBase mechanizmów SQL oferowanych przez bazę danych.

Transakcyjność

Jedną z najlepszych cech serwerów SQL są transakcje zapewniające spójność logiczną modyfikowanych danych. Domyślnie, sterownik Mediatora pracuje w trybie auto-commit, czyli wprowadzone zmiany są automatycznie zatwierdzane na poziomie rekordu. Zapewnia to 100% zgodność z zachowaniem standardowych sterowników.
Wprowadzając niewielkie modyfikacje w aplikacji można w pełni wykorzystać zalety systemu transakcyjnego. Do tego celu służą następujące polecenia dostępne w pliku mediator.ch:

BEGIN TRANSACTION - rozpoczęcie transakcji
COMMIT TRANSACTION - zakończenie transakcji z zatwierdzeniem wszystkich zmian
ROLLBACK TRANSACTION - zakończenie transakcji z wycofaniem wprowadzonych zmian

Wykonywanie poleceń SQL

Mediator udostępnia kilka funkcji umożliwiających wysyłanie do serwera SQL przygotowanych przez programistę komend SQL. Komendy SQL zwracające wiele rekordów wyniku należy wykonywać korzystając z instrukcji USE qry AS 'SELECT ...', która to wysyła do bazy podane zapytanie SQL i udostępnia jego wynik w postaci otwartego obszaru roboczego zawierającego rekordy wyniku.

Przykład:

USE zap1 AS 'select imie, nazwisko, sum(wyplata) as sw from wyplaty group by imie,nazwisko'
While .not. eof()
? IMIE, NAZWISKO, SW
SKIP
enddo


W podanym przykładzie wynik zwracany jest jako zbiór rekordów READ-ONLY, który może być przeglądany tylko do przodu. Używając opcji SCROLLABLE lub PERMANENT, można umieścić wynik w tablicy, co daje pełną możliwość nawigacji i zachowania wyniku na później.

W przypadku jeżeli mamy pewność, że zapytanie SQL zwróci tylko jedną wartość, lepiej skorzystać z funkcji MedSelVAL(). Unikniemy w ten sposób narzutu tworzenia nowego obszaru roboczego.

Przykład:

Suma_wypl = MedSelVal('select sum(wyplata) from wyplaty')

Polecenia SQL które nie zwracają wyniku należy wykonywać korzystając z funkcji MedExecSQL().

Przykład:

Wyn = MedExecSQL('create table test ( f1 char(10), f2 number(10,2) )')





 Polish English
| Mapa serwisu | Ochrona prywatności | Notka prawna | Uwagi | wersja do druku  wyślij e-mail