Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
SQL (Structured Query Language) är ett sätt att kommunicera med en relationsdatabas som gör att du kan definiera, fråga, ändra och kontrollera data. Med SQL-syntax kan du skapa en instruktion som extraherar poster enligt de villkor som du anger.
Anmärkning
Den här informationen gäller för MFC ODBC-klasserna. Om du arbetar med MFC DAO-klasserna kan du läsa artikeln Jämförelse av Microsoft Jet Database Engine SQL och ANSI SQL i DAO-hjälpen.
SQL-uttryck börjar med ett nyckelordsverb som CREATE eller SELECT. SQL är ett mycket kraftfullt språk. en enda instruktion kan påverka en hel tabell.
Det finns många versioner av SQL, var och en utvecklad med en viss DBMS i åtanke. MFC-databasklasserna känner igen en uppsättning SQL-instruktioner som motsvarar sql-utkastspecifikationen X/Open och SQL Access Group Common Applications Environment (CAE) (1991). Information om syntaxen för dessa instruktioner finns i bilaga C i ODBC-programmerarens referensdokumentation .
I det här avsnittet förklaras:
Open Database Connectivity (ODBC)
Databasklasserna implementeras med ODBC, som använder SQL i ett gränssnitt på anropsnivå i stället för att bädda in SQL-kommandon i koden. ODBC använder SQL för att kommunicera med en datakälla via ODBC-drivrutiner. Dessa drivrutiner tolkar SQL och översätter den, om det behövs, för användning med ett visst databasformat, till exempel Microsoft Access. Mer information om hur ODBC använder SQL finns i ODBC och ODBC-programmerarens referensdokumentation .
Databasklasser
Anmärkning
MFC ODBC-konsumentguiden är inte tillgänglig i Visual Studio 2019 och senare. Du kan fortfarande skapa en konsument manuellt.
Databasklasserna är utformade så att du kan ändra och uppdatera data i en befintlig datakälla. MFC-programguiden, MFC ODBC-konsumentguiden (som nås via Lägg till klass) och databasklasserna konstruerar de flesta SQL-uttryck åt dig.
Databasklasserna använder en del av SQL som kallas datamanipuleringsspråk (DML). Med de här kommandona kan du arbeta med hela eller delar av datakällan, lägga till nya poster, redigera poster och ta bort poster. I följande tabell visas de vanligaste SQL-nyckelorden och hur databasklasserna använder dem.
Några vanliga SQL-nyckelord
| SQL-nyckelord | Trollkarlarna och databasklasserna använder den |
|---|---|
| VÄLJ | För att identifiera vilka tabeller och kolumner i datakällan som ska användas. |
| VAR | Att applicera ett filter som begränsar urvalet. |
| SORTERA EFTER | För att tillämpa en sorteringsordning på datamängden. |
| INFOGA | Att lägga till nya poster i en postuppsättning. |
| TA BORT | Ta bort poster från en postuppsättning. |
| UPPDATERA | Ändra fälten i en post. |
Dessutom känner databasklasserna igen ODBC CALL-instruktioner , som du kan använda för att anropa en fördefinierad fråga (eller lagrad procedur) på vissa datakällor. ODBC-databasdrivrutinen tolkar dessa instruktioner och ersätter kommandot som är lämpligt för varje DBMS.
Anmärkning
Alla DBMSs stöder inte CALL-instruktioner .
Om klasserna inte kan identifiera en instruktion från användaren i CRecordset::Opentolkas den som ett tabellnamn.
En förklaring av hur ramverket konstruerar SQL-instruktioner finns i Recordset: How Recordsets Select Records (ODBC) and SQL: Customizing Your Recordset's SQL Statement (ODBC).
SQL-databaser använder datatyper som liknar dem som används i C och C++. En diskussion om dessa likheter finns i SQL: SQL och C++ Data Types (ODBC).
Du hittar mer information om SQL, inklusive en lista över SQL-instruktioner som stöds, datatyper, SQL Core-grammatik och en läslista över rekommenderade publikationer om SQL i Microsoft SQL-dokumentationen .
Så här använder databasklasserna SQL
De postuppsättningar som du härleder från databasklasserna använder ODBC för att kommunicera med en datakälla, och ODBC hämtar poster från datakällan genom att skicka SQL-instruktioner. Det här avsnittet förklarar relationen mellan databasklasserna och SQL.
En postuppsättning konstruerar en SQL-instruktion genom att bygga upp delarna av en SQL-instruktion i en CString. Strängen konstrueras som en SELECT-instruktion som returnerar en uppsättning poster.
När postuppsättningen anropar ODBC för att skicka en SQL-instruktion till datakällan, skickar ODBC Driver Manager instruktionen till ODBC-drivrutinen och drivrutinen skickar den vidare till det underliggande DBMS. DBMS returnerar en resultatuppsättning poster och ODBC-drivrutinen returnerar posterna till programmet. Databasklasserna låter programmet komma åt resultatuppsättningen i en typsäker C++-klass som härletts från CRecordset.
Följande avsnitt innehåller mer information om hur databasklasserna använder SQL: