SQL
SQL (ustrukturyzowany język zapytań) to sposób komunikowania się z relacyjną bazą danych, która umożliwia definiowanie, wykonywanie zapytań, modyfikowanie i kontrolowanie danych. Korzystając ze składni SQL, można utworzyć instrukcję, która wyodrębnia rekordy zgodnie z określonymi kryteriami.
Uwaga
Te informacje dotyczą klas MFC ODBC. Jeśli pracujesz z klasami MFC DAO, zobacz temat Porównanie bazy danych Microsoft Jet Database Engine SQL i ANSI SQL w pomocy dao.
Instrukcje SQL zaczynają się od czasownika kluczowego, takiego jak CREATE lub SELECT. SQL to bardzo zaawansowany język; pojedyncza instrukcja może mieć wpływ na całą tabelę.
Istnieje wiele wersji programu SQL, z których każdy został opracowany z myślą o konkretnym systemie DBMS. Klasy baz danych MFC rozpoznają zestaw instrukcji SQL odpowiadających specyfikacji wersji roboczej SQL X/Open i SQL Access Group Common Applications Environment (CAE) (1991). Aby uzyskać informacje na temat składni tych instrukcji, zobacz Dodatek C w dokumentacji referencyjnej programisty ODBC.
W tym temacie opisano:
Open Database Connectivity (ODBC)
Klasy baz danych są implementowane przy użyciu odBC, który używa języka SQL w interfejsie poziomu wywołań, a nie osadzania poleceń SQL w kodzie. OdBC używa języka SQL do komunikowania się ze źródłem danych za pośrednictwem sterowników ODBC. Te sterowniki interpretują język SQL i tłumaczą je w razie potrzeby do użycia z określonym formatem bazy danych, takim jak Microsoft Access. Aby uzyskać więcej informacji na temat sposobu, w jaki odBC korzysta z języka SQL, zobacz dokumentację referencyjną odbc i dokumentację referencyjną programisty ODBC.
Klasy bazy danych
Uwaga
Kreator klienta MFC ODBC nie jest dostępny w programie Visual Studio 2019 i nowszych wersjach. Nadal można ręcznie utworzyć użytkownika.
Klasy baz danych zostały zaprojektowane tak, aby umożliwić manipulowanie danymi i aktualizowanie ich w istniejącym źródle danych. Kreator aplikacji MFC, Kreator konsumenta MFC ODBC (dostępny za pośrednictwem funkcji Dodaj klasę), a klasy baz danych konstruowają większość instrukcji SQL.
Klasy baz danych używają części języka SQL znanej jako Język manipulowania danymi (DML). Te polecenia umożliwiają pracę ze wszystkimi lub częścią źródła danych, dodawanie nowych rekordów, edytowanie rekordów i usuwanie rekordów. W poniższej tabeli wymieniono najczęstsze słowa kluczowe SQL i sposoby ich używania przez klasy baz danych.
Niektóre typowe słowa kluczowe SQL
Słowo kluczowe SQL | Kreatorzy i klasy baz danych używają jej |
---|---|
SELECT | Aby określić, które tabele i kolumny w źródle danych mają być używane. |
WHERE | Aby zastosować filtr, który zawęża zaznaczenie. |
ORDER BY | Aby zastosować kolejność sortowania do zestawu rekordów. |
INSERT | Aby dodać nowe rekordy do zestawu rekordów. |
DELETE | Aby usunąć rekordy z zestawu rekordów. |
UPDATE | Aby zmodyfikować pola rekordu. |
Ponadto klasy baz danych rozpoznają instrukcje ODBC CALL , których można użyć do wywołania wstępnie zdefiniowanego zapytania (lub procedury składowanej) w niektórych źródłach danych. Sterownik bazy danych ODBC interpretuje te instrukcje i zastępuje polecenie odpowiednie dla każdego systemu DBMS.
Uwaga
Nie wszystkie zestawy DBMS obsługują instrukcje CALL .
Jeśli klasy nie rozpoznają instrukcji dostarczonej przez użytkownika w pliku CRecordset::Open
, jest interpretowana jako nazwa tabeli.
Aby uzyskać wyjaśnienie sposobu konstruowania instrukcji SQL przez platformę, zobacz Zestaw rekordów: Jak zestawy rekordów wybierają rekordy (ODBC) i SQL: Dostosowywanie instrukcji SQL zestawu rekordów (ODBC).
Bazy danych SQL używają typów danych podobnych do tych używanych w językach C i C++. Aby zapoznać się z tymi podobieństwami, zobacz SQL: SQL i C++ Data Types (ODBC).
Więcej informacji o języku SQL, w tym listę obsługiwanych instrukcji SQL, typów danych, gramatyki podstawowej sql i listę zalecanych publikacji dotyczących języka SQL, można znaleźć w dokumentacji usługi Microsoft SQL .
Jak klasy baz danych używają języka SQL
Zestawy rekordów pochodzące z klas baz danych używają odBC do komunikowania się ze źródłem danych, a odBC pobiera rekordy ze źródła danych, wysyłając instrukcje SQL. W tym temacie opisano relację między klasami baz danych i bazą danych SQL.
Zestaw rekordów tworzy instrukcję SQL, tworząc fragmenty instrukcji SQL w obiekcie CString
. Ciąg jest konstruowany jako instrukcja SELECT , która zwraca zestaw rekordów.
Gdy zestaw rekordów wywołuje odBC w celu wysłania instrukcji SQL do źródła danych, menedżer sterowników ODBC przekazuje instrukcję do sterownika ODBC, a sterownik wysyła go do bazowego systemu DBMS. Usługa DBMS zwraca zestaw wyników rekordów, a sterownik ODBC zwraca rekordy do aplikacji. Klasy baz danych umożliwiają programowi dostęp do zestawu wyników w klasie C++ bezpiecznej dla typu pochodzącej z CRecordset
klasy .
Poniższe tematy zawierają więcej informacji na temat używania języka SQL przez klasy baz danych: