Az Access csatlakoztatása SQL Serverhez

Az Access csatlakoztatása SQL Serverhez

Idézze fel fiatalsága boldog időszakát, amikor az ábécéleves volt a kedvenc étele. Gondoljon ezekre a szép emlékekre, amint az ábécéleves adatbázis-verzióját kóstolgatjuk. A következő szakaszok részletezik az adatbázisok kapcsolódási sztringekkel való beolvasásának alapjait és az adatbázis-programozási felületek használatát az Access VBA-kódjában.

Az adathozzáférés összetevői

Tartalom

ODBC-illesztőprogram vagy OLE DB-szolgáltató használata

Programozott kezelőfelület az SQL Serverhez az Accessben

Az ODBC-illesztőprogram verzióinak összefoglalása

Az OLE DB-szolgáltató verzióinak összefoglalása

Az ODBC-kulcsszó összefoglalása

Az OLE DB-kulcsszó összefoglalása

ODBC-illesztőprogram vagy OLE DB-szolgáltató használata

A kapcsolati sztringek már hosszú ideje jelen vannak. Az Access felhasználói felületén vagy a VBA-kódban megadhat egy formázott kapcsolati sztringet. A kapcsolati sztring (akár ODBC, akár OLE DB) közvetlenül az adatbázisnak adja át az adatokat, többek között a kiszolgáló helyét, az adatbázis nevét, a biztonság típusát és egyéb hasznos beállításokat. Például:

ODBC;DRIVER=SQL Server;SERVER="MyServer";DATABASE="MyHRdb";TRUSTED_CONNECTION=Yes
Provider=SQLOLEDB;Data Source=MyServer;Initial Catalog=MyHRdb; Integrated Security=SSPI;

Először az SQL Server Native Client (SNAC), egy különálló tár állt rendelkezésre, amely ODBC és OLEDB technológiát tartalmazott, és továbbra is elérhető az SQL Server 2005-ös verzióihoz a 2012-es verzión keresztül. Számos régi alkalmazás használt SNAC tárat, amely továbbra is támogatott az előző verziókkal való kompatibilitáshoz, új alkalmazásfejlesztésekhez azonban nem ajánljuk. Az ODBC-illesztőprogramok későbbi különálló és letölthető verzióit kell használnia.

ODBC-illesztőprogramok

A nyílt adatbázis-kapcsolat (ODBC) olyan protokoll, amely az Access-adatbázisok külső adatforrásokkal, például a Microsoft SQL Serverrel való összekapcsolásához használható. Általában fájladatforrásokat (más néven DSN-fájlokat) használva vesz fel kapcsolati sztringet, amely esetben a FILEDSN kulcsszót használja a kapcsolati karakterláncban, illetve tárolja a beállításjegyzékben, és ebben az esetben a DSN kulcsszót kell használnia. Másik lehetőségként a VBA használatával is megadhatja ezeket a tulajdonságokat egy „DSN nélküli” kapcsolati sztring használatával.

Az évek során az ODBC-illesztőprogramok kiadása három fázisban történt:

  • 2005 előtt az ODBC-illesztőprogramok az eredetileg Microsoft Data Access Components (MDAC) néven ismert Windows Data Access Components (WDAC) szolgáltatáshoz tartoztak. Ezek az összetevők továbbra is megtalálhatók a Windows rendszerben az előző verziókkal való kompatibilitás érdekében. További információt a Microsoft vagy Windows Data Access Components című cikkben talál.

  • SNAC-hoz tartozó ODBC-illesztőprogramok az SQL Server 2005-höz az SQL Server 2012-n keresztül.

  • Az SQL Server 2012 után az ODBC-illesztőprogramokat egyedileg adták ki, és támogatást tartalmaztak az SQL Server szolgáltatásaihoz.

Az új fejlesztés érdekében kerülje az első két fázisból származó ODBC-illesztőprogramok használatát, és használja a harmadik fázisba tartozó ODBC-illesztőprogramokat.

OLE DB-szolgáltatók

Az OLE DB (Object Linking and Embedding, Database) olyan újabb protokoll, amely az Access-adatbázisok külső adatforrásokkal, például a Microsoft SQL Serverrel való összekapcsolásához használható. Az OLE DB-nek nincs szüksége DSN-re, és teljes hozzáférést biztosít az ODBC-adatforrásokhoz és az ODBC-illesztőprogramokhoz is.

Tipp    Az Adatkapcsolat tulajdonságai párbeszédpanel általában egy OLE DB-kapcsolati sztring hozzáadására használható. Bár az Accessből nincs lehetősége megnyitni az Adatkapcsolat tulajdonságai párbeszédpanelt, a Windows Intézőben hozzon létre egy üres .txt fájlt, módosítsa a fájltípust .udl típusra, majd kattintson duplán a fájlra. A kapcsolati karakterlánc létrehozását követően állítsa vissza a fájltípust a. txt fájlra.

Az évek során az OLE DB-szolgáltatók kiadása három fázisban történt:

  • 2005 előtt az OLE DB-szolgáltatók az eredetileg Microsoft Data Access Components (MDAC) néven ismert Windows Data Access Components (WDAC) szolgáltatáshoz tartoztak.

  • SQL Server 2005-höz tartozó OLE DB-szolgáltatók az SQL Server 2017-en keresztül. 2011-ben elavult.

  • 2017-ben az SQL Server OLE DB-szolgáltatót visszaállították.

Az új megoldások fejlesztéséhez jelenleg javasolt verzió az OLE DB Driver 18 for SQL Server.

A teljesítmény optimalizálása ODBC-kapcsolati karakterlánccal

A teljesítmény optimalizálása érdekében minimalizálja a hálózati forgalmat, és csökkentse a többfelhasználós hozzáférést az SQL Server-adatbázishoz, a kapcsolati karakterláncok több rekordra való megosztásával a lehető legkevesebb kapcsolati karakterláncot használja. Habár az Ace egyszerűen továbbítja a kapcsolati sztringet a kiszolgálóhoz, az alábbi kulcsszavakat fogja érteni és használni: A DSN, a DATABASE, az UID, a PWD és a DRIVER segítségével minimalizálhatja az ügyfél és a kiszolgáló közötti kommunikációt.

Megjegyzés:    Ha a külső adatforrással létesített ODBC-kapcsolat elvész, az Access automatikusan megkísérli az újbóli csatlakozást. Ha az újbóli próbálkozás sikeres, tovább folytathatja a munkát. Ha az újbóli próbálkozás sikertelen, a kapcsolattól nem függő objektumokat továbbra is használhatja. Az újracsatlakozáshoz zárja be és nyissa meg újra az Accesst.

Javaslatok az ODBC és az OLE DB használata esetén

Kerülje a kapcsolati sztring és az adatbázis-hozzáférési technológiák keverését. Használjon ODBC-kapcsolati sztringet a DAO-hoz. Használjon OLE DB-kapcsolati sztringet az ADO-hoz. Ha az alkalmazás a DAO és az ADO típust használó VBA-kódot tartalmaz, akkor a DAO és az OLE DB-szolgáltató ODBC-illesztőprogramját használhatja az ADO szolgáltatáshoz. Arra törekszünk, hogy a legújabb szolgáltatásokhoz és az ODBC-hez és az OLEDB-hez egyaránt támogatást nyújtsunk.

Az ODBC az illesztőprogram, az OLE DB pedig a szolgáltató kifejezést használja. A feltételek leírják az azonos típusú szoftverösszetevőt, de nem cserélhetők fel a kapcsolati sztring szintaxisában. Használja a helyes értéket a dokumentált formában.

Vissza a lap tetejére

Programozott kezelőfelület az SQL Serverhez az Accessben

Az Accessben két fő módon választhat programozott kezelőfelületet az SQL Server-adatbázishoz.

DAO

A DAO (Data Access Objects) absztrakt felületet biztosít az adatbázishoz. A DAO (Data Access Objects) a natív programozást lehetővé tevő objektumorientált modell, amellyel az Access és az SQL Server központjában hozhat létre, törölhet, módosíthat és listázhat objektumokat, táblákat, mezőket, indexeket, kapcsolatokat, lekérdezéseket, tulajdonságokat és külső adatbázisokat.

További információt A Microsoft Data Access Objects – referencia című cikkben talál.

ADO

Az ADO (ActiveX Data Objects) egy magas szintű programozási modellt biztosít, és az Accessben egy harmadik fél könyvtárára mutató hivatkozással érhető el. Az ADO egyszerűen megtanulható, és lehetővé teszi az ügyfélalkalmazás számára a különféle forrásokból (például az Accessből és az SQL Serverről) származó adatok elérését és kezelését. Elsődleges előnye a könnyű használat, a nagy sebesség, a kis memóriaigény és a kis helyigényű lemez. Az ADO ezenkívül támogatja a készítéshez használt és a webes alkalmazások fő funkcióit.

További információt a Microsoft ActiveX Data Objects – referencia és a Microsoft ActiveX Data Objects (ADO) című cikkben talál.

Melyiket érdemes választani?

VBA-kódot használó Access-megoldásokban a DAO és az ADO, valamint mindkettő használható adatbázis-illesztő technológiaként. Az Accessben továbbra is a DAO az alapértelmezett. Az összes űrlap, jelentés és Access-lekérdezés például DAO-t használ. Amikor azonban áttér az SQL Serverre, érdemes lehet az ADO használatával hatékonyabbá tenni a megoldást. A DAO és az ADO használatának eldöntését az alábbi általános útmutatások segítik.

Használja a DAO-t az alábbi esetekben:

  • írható/olvasható, kötött űrlap létrehozása VBA használata nélkül;

  • helyi táblák lekérdezése;

  • adatok letöltése ideiglenes táblákba;

  • átadó lekérdezések használata adatforrásként jelentésekhez és űrlapokhoz írásvédett módban;

  • TableDef- vagy QueryDef-objektum definiálása és használata a VBA-ban.

Használja az ADO-t az alábbi esetekben:

  • további optimalizálási módszerek használata, például aszinkron műveletek végrehajtása;

  • DDL-ről és DML-ről továbbított átadó lekérdezések futtatása;

  • SQL Server-adatok beolvasása közvetlenül rekordhalmazokon keresztül a VBA-ban;

  • egyszerűbb kódok írása bizonyos tevékenységekhez, például a Blobs-adatfolyamhoz;

  • tárolt eljárás közvetlen meghívása paraméterekkel, a VBA-ban egy parancssori objektum használatával.

Vissza a lap tetejére

Az ODBC-illesztőprogram verzióinak összefoglalása

Az alábbi táblázat összefoglalja az ODBC-illesztőprogram verzióival, a letöltési helyekkel és a szolgáltatások támogatásával kapcsolatos fontos információkat. Győződjön meg arról, hogy az illesztőprogram megfelelő (64 bites vagy 32 bites) verzióját használja (nem az Office, hanem a Windows verziója alapján). Ha a 32 bites verziós Accesst futtatja a 64 bites Windows rendszerben, telepítse a 64 bites illesztőprogramokat, amelyek az Accesshez szükséges, 32 bites összetevőket is tartalmazzák.

További információ: Kapcsolati sztringben szereplő kulcsszavak használata SQL Server Native Clienttel, Kiadási megjegyzések az SQL Serverhez tartozó ODBC-illesztőprogramhoz Windows (V17) rendszeren és A Microsoft ODBC Driver for SQL Server illesztőprogram szolgáltatásai Windows (V13, 11) rendszeren.

ODBC-illesztőprogramok

Verzió

Letöltés

Új szolgáltatások

ODBC-illesztőprogramok 17.0 – 17.3

SQL Server 2017

Letöltés

ODBC-illesztő 17.3

Az Azure Active Directory használata az ODBC-illesztőprogrammal

Az ODBC-illesztőprogram korlátai az Always Encrypted szolgáltatás használatakor

XA-tranzakciók használata

ODBC-illesztőprogram 17.2

Az Always Encrypted szolgáltatás használata az ODBC Driver for SQL Server illesztőprogrammal

Adatok osztályozása

UTF-8 kiszolgálói kódolás – Rendezés és Unicode-támogatás

ODBC Driver 17.1

Az Always Encrypted szolgáltatás használata az ODBC Driver for SQL Server illesztőprogrammal

ODBC Driver 17.0

Always Encrypted

UseFMTONLY    A régi metaadatok használata speciális esetekben ideiglenes táblákat igényel. Lásd: Kiadási megjegyzések az SQL Serverhez tartozó ODBC-illesztőprogramhoz Windows rendszeren

Különbségek a felügyelt példány használatakor (ODBC 17-es verzió)

ODBC Driver 13.1

SQL Server 2016 SP1, SQL Azure

Letöltés

Always Encrypted

Azure Active Directory

AlwaysOn rendelkezésre állási csoportok

Illesztőprogramot használó kapcsolatkészletezés az ODBC Driver for SQL Server illesztőprogramban

ODBC Driver 13.0

SQL Server 2016

Letöltés

Nemzetközi tartománynév (IDN)

ODBC Driver 11.0

SQL Server 2005–2012

Letöltés

Illesztőprogramot használó kapcsolatkészletezés

Kapcsolat rugalmassága a Windows ODBC-illesztőprogramban

Aszinkron végrehajtás

Szolgáltatások egyszerű neve az ügyfélkapcsolatokban (ODBC)

A Microsoft ODBC Driver for SQL Server szolgáltatásai Windowson

Vissza a lap tetejére

Az OLE DB-szolgáltató verzióinak összefoglalása

Az alábbi táblázat összefoglalja az OLE DB-szolgáltatók verzióival, a letöltési helyekkel és a szolgáltatások támogatásával kapcsolatos fontos információkat. Győződjön meg arról, hogy az illesztőprogram megfelelő (64 bites vagy 32 bites) verzióját használja (nem az Office, hanem a Windows verziója alapján). Ha a 32 bites verziós Accesst futtatja a 64 bites Windows rendszerben, telepítse a 64 bites illesztőprogramokat, amelyek az Accesshez szükséges, 32 bites összetevőket is tartalmazzák.

További információ: Kapcsolati sztringben szereplő kulcsszavak használata SQL Server Native Clienttel.

OLE DB-szolgáltató

Verzió

Letöltés

Új szolgáltatások

OLE DB Driver 18.2.1

(MSOLEDBSQL)

SQL Server 2017

Letöltés

OLE DB Driver for SQL Server szolgáltatás és Kiadási megjegyzések a Microsoft OLE DB Driver for SQL Server illesztőprogramhoz

SQL Server Native Client (SQLNCLI)

SQL Server 2005–2012

Elavult, ne használja

OLE DB Driver (SQLOLEDB)

Elavult, ne használja

Vissza a lap tetejére

Az ODBC-kulcsszó összefoglalása

Az alábbi táblázat összefoglalja az SQL Server által felismert ODBC-kulcsszavakat és a rendeltetésüket. Az Access csak egy részhalmazt ismer fel.

Kulcsszó

Leírás

Addr

Az SQL Server-példányt futtató kiszolgáló hálózati címe.

AnsiNPW

Az ANSI által definiált viselkedések használatát határozza meg a NULL összehasonlítások, a karakter típusú adatok kitöltése, a figyelmeztetések és a NULL összefűzés (igen vagy nem) kezelésére.

APP

Az SQLDriverConnect függvény meghívására szolgáló alkalmazás neve.

ApplicationIntent

Az alkalmazás terhelési típusának deklarálása a kiszolgálóhoz való kapcsolódáskor (ReadOnly vagy ReadWrite).

AttachDBFileName

Csatolható adatbázis elsődleges fájljának a neve.

AutoTranslate

Azt adja meg, hogy az ANSI sztringek küldése az ügyfél vagy a kiszolgáló között történik-e, illetve Unicode-ra fordítja-e a rendszer (igen vagy nem).

Database

Az adatbázis neve. Leírás A kapcsolat célja. Driver Az SQLDrivers által visszaadott illesztőprogram neve.

DSN

Egy meglévő ODBC-felhasználó vagy rendszeradatforrás neve. Encrypt Azt adja meg, hogy a rendszer titkosítsa-e az adatokat, mielőtt a hálózaton keresztül elküldené őket (igen vagy nem).

Failover_Partner

Annak a feladatátvételi partnerkiszolgálónak a neve, amelyet akkor kell használni, ha nem lehet az elsődleges kiszolgálóval kapcsolatot létesíteni.

FailoverPartnerSPN

A feladatátvételi partner egyszerű szolgáltatásneve.

Fallback

Elavult kulcsszó.

FileDSN

Egy meglévő ODBC-fájladatforrás neve. Language Az SQL Server nyelve.

MARS_Connection

Az SQL Server 2005 (9.x) vagy újabb verzió kapcsolatán több aktív eredményhalmazt (MARS) ad meg (igen vagy nem).

MultiSubnetFailover

Megadja, hogy csatlakozik-e egy SQL Server-alapú rendelkezésre állási csoporthoz vagy egy feladatátvevő fürtpéldányhoz (igen vagy nem).

Net

A dbnmpntw nevesített csövet jelez, a dbmssocn pedig TCP/IP-t.

PWD

Az SQL Server bejelentkezési jelszava.

QueryLog_On

A hosszú ideig futó lekérdezések naplózását adja meg (igen vagy nem).

QueryLogFile

A hosszú ideig futó lekérdezések adatainak naplózásához használandó fájl teljes elérési útja és fájlneve.

QueryLogTime

Számjegyet tartalmazó sztring, amely megadja a hosszú ideig futó lekérdezések naplózási küszöbét (ezredmásodpercben).

QuotedId

Azt adja meg, hogy az SQL Server az idézőjelek használatakor ISO-szabályokat használ-e az SQL-utasításokban (igen vagy nem).

Regional

Azt adja meg, hogy az SQL Server Native Client ODBC-illesztőprogramja ügyfélbeállításokat használ-e a pénznemek, a dátumok és az időpontok adatainak karakterekre való konvertálásakor (igen vagy nem).

SaveFile

Egy olyan ODBC-adatforrásfájl neve, amelybe az aktuális kapcsolat attribútumait menti a rendszer, ha a kapcsolat sikeresen megtörtént.

Server

Egy SQL Server-példány neve: A hálózaton lévő kiszolgáló, egy IP-cím vagy a Konfigurációkezelő aliasa.

ServerSPN

A kiszolgáló egyszerű szolgáltatásneve.

StatsLog_On

Lehetővé teszi az SQL Server Native Client ODBC-illesztőprogram teljesítményadatai rögzítését.

StatsLogFile

Az SQL Server Native Client ODBC-illesztőprogram teljesítménystatisztikájának rögzítésére használt fájl teljes elérési útja és fájlneve.

Trusted_Connection

Azt adja meg, hogy a bejelentkezési ellenőrzéshez használja-e a Windows hitelesítési módot vagy az SQL Server-felhasználónevét vagy jelszavát (igen vagy nem).

TrustServerCertificate

A titkosítással történő használat során önaláírt kiszolgálótanúsítvány használatával teszi lehetővé a titkosítást.

UID

Az SQL Server bejelentkezési neve.

UseProcForPrepare

Elavult kulcsszó.

WSID

A munkaállomás azonosítója, annak a számítógépnek a hálózati neve, amelyen az alkalmazás található.

Vissza a lap tetejére

Az OLE DB-kulcsszó összefoglalása

Az alábbi táblázat összefoglalja az SQL Server által felismert OLE DB-kulcsszavakat és a rendeltetésüket. Az Access csak egy részhalmazt ismer fel.

Kulcsszó

Leírás

Addr

Az SQL Server-példányt futtató kiszolgáló hálózati címe.

APP

Az alkalmazást azonosító karakterlánc.

ApplicationIntent

Az alkalmazás terhelési típusának deklarálása a kiszolgálóhoz való kapcsolódáskor (ReadOnly vagy ReadWrite).

AttachDBFileName

Csatolható adatbázis elsődleges fájljának a neve.

AutoTranslate

Az OEM/ANSI-karakterek fordítását konfigurálja (igaz vagy hamis).

Connect Timeout

Az adatforrás inicializálásának befejeződéséhez szükséges idő (másodpercben).

Current Language

Az SQL Server nyelvének neve.

Data Source

A szervezet SQL Server-példányának neve.

Database

Az adatbázis neve.

DataTypeCompatibility

A használandó adattípus-kezelés módját jelző szám.

Encrypt

Azt adja meg, hogy a rendszer titkosítsa-e az adatokat, mielőtt a hálózaton keresztül elküldené őket (igen vagy nem).

FailoverPartner

Az adatbázis-tükrözéshez használt feladatátvételi kiszolgáló neve.

FailoverPartnerSPN

A feladatátvételi partner egyszerű szolgáltatásneve.

Initial Catalog

Az adatbázis neve.

Initial File Name

Az elsődleges fájl neve egy csatolható adatbázis teljes elérési útjával.

Integrated Security

Windows-hitelesítéshez (SSPI) használható.

Language

Az SQL Server nyelve.

MarsConn

Az SQL Server 2005 (9.x) vagy újabb verzió kapcsolatán több aktív eredményhalmazt (MARS) ad meg (igen vagy nem).

Net

Az a hálózati könyvtár, amellyel kapcsolatot létesíthet a szervezet SQL Server-példányával.

Network Address

A szervezet SQL Server-példányának hálózati címe.

PacketSize

Hálózati csomag mérete. Az alapértelmezett érték a 4096.

Persist Security Info

Azt adja meg, hogy engedélyezve van-e a biztonsági adatok megőrzése (igaz vagy hamis).

PersistSensitive

Azt adja meg, hogy engedélyezve van-e a bizalmas adatok megőrzése (igaz vagy hamis).

Provider

Az SQL Server Native Client esetén ez az SQLNCLI11.

PWD

Az SQL Server bejelentkezési jelszava.

Server

Egy SQL Server-példány neve: A hálózaton lévő kiszolgáló, egy IP-cím vagy a Konfigurációkezelő aliasa.

ServerSPN

A kiszolgáló egyszerű szolgáltatásneve.

Timeout

Az adatforrás inicializálásának befejeződéséhez szükséges idő (másodpercben).

Trusted_Connection

Azt adja meg, hogy a bejelentkezési ellenőrzéshez használja-e a Windows hitelesítési módot vagy az SQL Server-felhasználónevét vagy jelszavát (igen vagy nem).

TrustServerCertificate

Azt adja meg, hogy egy kiszolgálótanúsítvány érvényesítve van-e (igaz vagy hamis).

UID

Az SQL Server bejelentkezési neve.

Use Encryption for Data

Azt adja meg, hogy a rendszer titkosítsa-e az adatokat, mielőtt a hálózaton keresztül elküldené őket (igaz vagy hamis).

UseProcForPrepare

Elavult kulcsszó.

WSID

A munkaállomás azonosítója, annak a számítógépnek a hálózati neve, amelyen az alkalmazás található.

Vissza a lap tetejére

Lásd még

ODBC-adatforrások felügyelete

Csatolt táblák kezelése

Office-jártasság bővítése
Oktatóanyagok megismerése
Új szolgáltatások listájának lekérése
Részvétel az Office Insider programban

Hasznos volt az információ?

Köszönjük a visszajelzését!

Köszönjük visszajelzését. Jobbnak látjuk, ha az Office egyik támogatási szakemberéhez irányítjuk.

×