Prisijungti „Access“ prie „SQL Server“
Applies To„Access“, skirta „Microsoft 365“ „Access 2024“ Access 2021 Access 2019 Access 2016

Prisiminkite jaunas dienas, kai abėcėlės raidelių sriuba buvo malonus maistas. Prisiminkite šias malonias akimirkas, nes mes šiek tiek išmanome abėcėlės raidelių sriubos skonio duomenų bazės versiją. Tolesniuose skyriuose išdėstyti pagrindai, kaip pasiekti duomenų bazę naudojant jungimosi eilutes ir naudoti duomenų bazės programavimo sąsają „Access VBA“ kode.

Duomenų prieigos komponentai

Šiame straipsnyje

ODBC tvarkyklė arba OLE DB teikimo įrankis

Programinė sąsaja su „SQL Server“ iš „Access“

ODBC tvarkyklės versijų santrauka

OLE DB tvarkyklės teikimo įrankio versijos

ODBC raktažodžių suvestinė

OLE DB raktažodžių suvestinė

ODBC tvarkyklė arba OLE DB teikimo įrankis

Jungimosi eilutės ilgą laiką buvo netoli. Galite nustatyti suformatuotą jungimosi eilutę „Access“ vartotojo sąsajoje arba VBA kode. Jungimosi eilutė (ODBC arba OLE DB) perduoda informaciją tiesiogiai į duomenų bazę, pvz., serverio vietą, duomenų bazės pavadinimą, saugos tipą ir kitas naudingas parinktis. Pavyzdžiui:

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

Iš pradžių buvo „SQL Server Native Client“ (SNAC) atskira biblioteka, kurioje buvo įdiegtos ODBC ir OLEDB technologijos ir kuri vis dar yra prieinama „SQL Server“ 2005–2012 m. versijoms. Daugelis senstelėjusių programų naudojo SNAC ir vis dar palaikomas atgalinis suderinamumas, tačiau nerekomenduojame jų naudoti naujoms programoms kurti. Turėtumėte naudoti vėlesnes atskiras atsisiunčiamas ODBC tvarkyklių versijas.

ODBC tvarkyklės

„Open Database Connectivity“ (ODBC) yra protokolas, kurį naudodami „Access“ duomenų bazę galite prijungti prie išorinio duomenų šaltinio, pvz., „Microsoft SQL Server“. Paprastai, norint įtraukti jungimosi eilutę, naudojamas failų duomenų šaltinis (taip pat vadinamas DSN failais), tuo atveju, jei FILEDSN raktažodis naudojamas jungimosi eilutėje arba saugomas registre, tokiu naudojamas DSN raktažodis. Taip pat galite naudoti VBA, kad nustatytumėte šias ypatybes naudodami jungimosi eilutę „DSN-mažiau“ jungimosi eilutę.

Per kelerius metus ODBC tvarkyklės buvo išsiųstos trimis etapais:

  • Iki 2005 m. ODBC tvarkyklės išsiųstos su „Windows Data Access Components“ (WDAC) komponentais, kurie iš pradžių buvo vadinami „Microsoft Data Access Components“ (MDAC) komponentais. Šie komponentai vis dar siunčiami su „Windows“, kad būtų galimas atgalinis suderinamumas. Daugiau informacijos žr. „Microsoft" arba „Windows Data Access“ komponentai.

  • ODBC tvarkyklės išsiųstos su SNAC, skirtu „SQL Server 2005“ naudojant „SQL Server 2012“.

  • Po „SQL Server 2012“ ODBC tvarkyklės buvo išsiųstos atskirai ir apima naujų „SQL Server“ funkcijų palaikymą.

Jei naudojate naująją plėtotę, nenaudokite ODBC tvarkyklių iš pirmųjų dviejų etapų, naudokite ODBC tvarkykles, esančias trečiajame etape.

OLE DB teikimo įrankiai

Objektų susiejimas ir įterptis , duomenų bazė (OLE DB) yra naujesnis protokolas, kurį naudodami „Access“ duomenų bazę galite prijungti prie išorinio duomenų šaltinio, pvz., „Microsoft SQL Server“. OLE DB nereikalauja DSN, taip pat suteikia visišką prieigą prie ODBC duomenų šaltinių ir ODBC tvarkyklių.

Patarimas    Paprastai naudojate dialogo langą Duomenų susiejimo ypatybės , kad įtrauktumėte OLE DB jungimosi eilutę. Nors iš „Access“ negalima atidaryti dialogo lango Duomenų susiejimo ypatybės , „Windows Explorer“ galite sukurti tuščią. .txt failą, pakeisti failo tipą į .udl, tada dukart spustelėti failą. Sukūrę jungimosi eilutę, pakeiskite failo tipą atgal į .txt.

Per kelerius metus OLE DB teikimo įrankiai buvo išsiųsti trimis etapais:

  • Iki 2005 m. OLE DB teikimo įrankiai išsiųsti su „Windows Data Access Components“ (WDAC) komponentais, kurie iš pradžių buvo vadinami „Microsoft Data Access Components“ (MDAC) komponentais.

  • OLE DB teikimo įrankiai išsiųsti naudojant „SQL Server 2005“ per „SQL Server 2017“. Jis buvo atšauktas 2011 m.

  • 2017 m. „SQL Server“ OLE DB teikimo įrankio atšaukimas panaikintas.

Šiuo metu rekomenduojama naujų sprendimų kūrimo versija yra OLE DB tvarkyklė 18, skirta „SQL Server“.

Kaip optimizuoti našumą naudojant ODBC jungimosi eilutę

Norėdami optimizuoti našumą, sumažinkite tinklo srautą ir sumažinkite kelių vartotojų prieigą prie „SQL Server“ duomenų bazės, naudokite kuo daugiau jungimosi eilučių, kad būtų galima bendrinti jungimosi eilutes keliuose įrašų rinkiniuose. Nors „Ace“ tiesiog pereina prie jungimosi eilutės į serverį, jis nesupranta ir naudoja šiuos raktažodžius: DSN, DUOMENŲ BAZĖ, UID, PWD ir TVARKYKLĖ, kurie padės sumažinti kliento / serverio bendravimą.

Atminkite    Jei nutrūksta ODBC ryšys su išoriniu duomenų šaltiniu, „Access“ automatiškai bando iš naujo prisijungti prie jo. Jei kartojimas pavyksta, galite toliau dirbti. Jei pakartoti nepavyksta, vis tiek galite dirbti su objektais, kurie nepalaiko ryšio. Norėdami iš naujo prisijungti, uždarykite ir iš naujo atidarykite „Access“.

Rekomendacijos naudojant ODBC ir OLE DB

Nenaudokite jungimosi eilutės ir duomenų bazių prieigos technologijų. Naudokite ODBC jungimosi eilutę, skirtą DAO. Naudokite ODBC jungimosi eilutę, skirtą ADO. Jei jūsų programa turi VBA kodą, kuris naudoja DAO ir ADO, tada naudokite ODBC tvarkyklę, skirtą DAO, ir OLE DB teikimo įrankį, skirtą ADO. Siekia gauti naujausią funkciją ir palaiko atitinkamai ODBC ir OLEBO.

ODBC naudoja sąlygų tvarkyklę ir OLE DB naudoja sąlygų teikimo įrankį. Sąlygose aprašomas tas pats programinės įrangos komponento tipas, bet negalima pakeisti jungimosi eilutės sintaksė. Naudokite tinkamą reikšmę kaip dokumentuotą.

Puslapio viršus

Programinė sąsaja su „SQL Server“ iš „Access“

Yra du pagrindiniai programinės sąsajos su „SQL Server“ duomenų baze iš „Access“ būdai.

DAO

Duomenų prieigos objektas (DAO) pateikia abstrakčią sąsają su duomenų baze. „Microsoft“ duomenų prieigos objektai (DAO) yra pradinio programinio objekto modelio, kuris suteikia galimybę pasiekti „Access“ ir „SQL Server“ pagrindą, kad būtų galima kurti, naikinti, modifikuoti ir išvardyti objektus, lenteles, laukus, rodykles, ryšius, užklausas, ypatybes ir išorines duomenų bazes.

Daugiau informacijos žr. „Microsoft" duomenų prieigos nuorodos.

ADO

„ActiveX“ duomenų objektai (ADO) teikia aukšto lygio programavimo modelį ir jie pasiekiami „Access“ naudojant nuorodą į trečiosios šalies biblioteką. ADO paprasta mokyti ir įgalinama kliento programų prieiga ir duomenis valdymas iš įvairių šaltinių, įskaitant „Access“ ir „SQL Server“. Jos pagrindiniai privalumai yra paprastas naudojimas, didelis greitis, mažos atminties išlaidos ir mažas disko pėdsakas. ADO taip pat palaiko pagrindines kūrimo ir žiniatinkliu pagrįstų taikomųjų programų funkcijas.

Daugiau informacijos žr „Microsoft ActiveX“ duomenų objektų nuoroda ir „Microsoft ActiveX“ duomenų objektai (ADO).

Kurią pasirinksite?

Naudojant „Access“ sprendimą, kuris naudoja VBA kodą, kaip duomenų bazių sąsajos technologiją galite naudoti DAO, ADO arba abu. DAO ir toliau yra numatytoji „Access“ reikšmė. Pvz., visos formos ir ataskaitos bei „Access“ užklausos naudoja DAO. Bet kai perkelsite į „SQL Server“, apsvarstykite galimybę naudoti ADO, kad sprendimas būtų efektyvesnis. Pateikiame bendras gaires, kurios padės nuspręsti, kada naudoti DAO arba ADO.

Naudokite DAO, kai norite:

  • Kurti skaitymo / rašymo, susietąją formą nenaudojant VBA.

  • Pateikti vietinių lentelių užklausas.

  • Atsisiųsti duomenų į laikinas lenteles.

  • Naudoti tiesiogines užklausas kaip duomenų šaltinius ataskaitoms arba formoms tik skaitymo režimu.

  • Nustatyti ir naudoti „TableDef“ arba „Querydef“ objektą VBA.

Naudokite ADO, kai norite:

  • Naudoti papildomus optimizavimo būdus, pvz., vykdyti asinchronines operacijas.

  • Vykdyti DDL ir DML tiesiogines užklausas.

  • Tiesiogiai gauti „SQL Server“ duomenis tiesiogiai naudojant įrašų rinkinius VBA.

  • Rašyti paprastesnį tam tikrų užduočių, pvz., „Blobs“ transliacijos, kodą.

  • Tiesiogiai iškviesti įrašytą procedūrą su parametrais, naudojant komandų objektą VBA.

Puslapio viršus

ODBC tvarkyklės versijų santrauka

Toliau pateiktoje lentelėje apibendrinama svarbi informacija apie ODBC tvarkyklės versijas, atsisiuntimo vietas ir funkcijų palaikymą. Įsitikinkite, kad naudojate tinkamą (64 bitų arba 32 bitų) tvarkyklės versiją, pagrįstą „Windows“, bet ne „Office“. Jei naudojate 32 bitų „Access“ 64 bitų „Windows“ versijoje, įdiekite 64 bitų tvarkykles, kurios apima „Access“ reikalingus 32 bitų komponentus.

Daugiau informacijos žr. Jungimosi eilutės raktažodžių naudojimas su „SQL Server“ vietiniu klientu, Leidimo pastabos, skirtos ODBC su „SQL Server“ sistemoje „Windows“ (V17) ir „Microsoft“ ODBC tvarkyklės, skirtos „SQLServer“ funkcijoms „Windows“ (V13, 11).

ODBC tvarkyklės

Versija

Atsisiųsti

Naujos funkcijos

ODBC tvarkyklės nuo 17.0 iki 17.3

SQL Server 2017

Atsisiųsti

ODBC Driver 17.3

„Azure Active Directory“ naudojimas su ODBC tvarkykle

ODBC tvarkyklės apribojimai, kai naudojama funkcija Visada užšifruota

XA operacijų naudojimas

ODBC tvarkyklė 17.2

Funkcijos Visada užšifruota naudojimas su ODBC tvarkykle, skirta „SQL Server“

Duomenų klasifikavimas

UTF-8 serverio kodavimo sulyginimas ir „Unicode“ palaikymas

ODBC tvarkyklė 17.1

Funkcijos Visada užšifruota naudojimas su ODBC tvarkykle, skirta „SQL Server“

ODBC tvarkyklė 17.0

Visada užšifruota

UseFMTONLY    Jei norite naudoti pasenusių metaduomenų specialiuosius atvejus, kai reikia laikinųjų lentelių. Žr. Leidimo pastabos, skirtos ODBC su „SQL Server“, naudojant „Windows“

Skirtumai, kai naudojamas valdomas egzempliorius (ODBC 17 versija)

ODBC tvarkyklė 13.1

„SQL Server“ 2016 SP1, „SQL Azure“

Atsisiųsti

Visada užšifruota

Azure Active Directory

AlwaysOn prieinamumo grupės

Driver Aware Connection Pooling in the ODBC Driver for SQL Server

ODBC tvarkyklė 13.0

SQL Server 2016

Atsisiųsti

Internacionalizuotas domeno vardas (IDN)

ODBC tvarkyklė 11.0

„SQL Server“ nuo 2005 iki 2012

Atsisiųsti

„Driver-Aware“ ryšio buferizavimas

Ryšio atkuriamumas „Windows“ ODBC tvarkyklėje

Asinchroninis vykdymas

Tarnybos principo pavadinimai (SPN) klientų ryšiuose (ODBC)

„Microsoft ODBC“ tvarkyklės, skirtos „SQL Server“ „Windows“ sistemoje, funkcijos

Puslapio viršus

OLE DB tvarkyklės teikimo įrankio versijos

Toliau pateiktoje lentelėje apibendrinama svarbi informacija apie OLE DB teikimo įrankių versijas, atsisiuntimo vietas ir funkcijų palaikymą. Įsitikinkite, kad naudojate tinkamą (64 bitų arba 32 bitų) tvarkyklės versiją, pagrįstą „Windows“, bet ne „Office“. Jei naudojate 32 bitų „Access“ 64 bitų „Windows“ versijoje, įdiekite 64 bitų tvarkykles, kurios apima „Access“ reikalingus 32 bitų komponentus.

Daugiau informacijos žr. Jungimosi eilutės raktažodžių naudojimas su „SQL Server“ vietiniu klientu.

OLE DB teikimo įrankiai

Versija

Atsisiųsti

Naujos funkcijos

OLE DB tvarkyklė 18.2.1

(MSOLEBSQL)

SQL Server 2017

Atsisiųsti

Žr. OLE DB tvarkyklės, skirtos „SQL Server“, funkcijos ir Leidimo pastabos, skirtos „Microsoft“ OLE DB tvarkyklei „SQL Server“

„SQL Server“ vietinis klientas (SQLNCLI)

„SQL Server“ nuo 2005 iki 2012

Atsisakyta, nenaudokite

OLE DB tvarkyklė (SQLOLEDB)

Atsisakyta, nenaudokite

Puslapio viršus

ODBC raktažodžių suvestinė

Toliau pateiktoje lentelėje apibendrinami ODBC raktažodžiai, kuriuos atpažįsta „QL Server“, ir jų paskirtis. „Access“ atpažįsta tik pogrupį.

Raktažodis

Aprašas

Addr

Serverio, kuriame veikia „SQL Server“ egzempliorius, tinklo adresas.

AnsiNPW

Nurodo ANSI apibrėžtų veikimo galimybių, skirtų NULL palyginimams tvarkyti, simbolių duomenims užpildyti, įspėjimams ir NULL sujungimui (taip arba ne).

APP

Taikomosios programos, kuri iškviečia „SQLDriverConnect“, pavadinimas.

ApplicationIntent

Deklaruoja taikomosios programos darbo krūvį, kai jungiasi prie serverio (tik skaityti arba skaityti ir rašyti).

AttachDBFileName

Galimos pridėti duomenų bazės pirminio failo vardas.

AutoTranslate

Nurodo, ar iš kliento arba serverio siunčiamos ANSI simbolių eilutės, ar išverstos į „Unicode“ (Taip ar Ne).

Duomenų bazė

Duomenų bazės pavadinimas. Aprašas Jungimosi paskirtis. Tvarkyklė „SQLDrivers“ pateiktos tvarkyklės pavadinimas.

DSN

Esamo ODBC vartotojo arba sistemos duomenų šaltinio pavadinimas. Šifruoti Nurodykite, ar duomenys turėtų būti užšifruoti prieš siunčiant juos tinklu (taip arba ne).

Failover_Partner

Permetimo partnerio serverio, kuris bus naudojamas, jei jungimosi negalima sukurti pirminiame serveryje, pavadinimas.

FailoverPartnerSPN

Permetimo partnerio SPN.

Atsarginis

Atšauktas raktažodis.

FileDSN

Esamo ODBC failo duomenų šaltinio pavadinimas. Kalba „SQL Server“ kalba.

MARS_Connection

Nurodo keletą aktyvių „SQL Server 2005“ (9.x) arba vėlesnės versijos (taip arba ne) jungimosi rezultatų rinkinių (MARS).

MultiSubnetFailover

Nurodo, ar prisijungti prie „SQL Server“ prieinamumo grupės prieinamumo grupės klausytojo ar prie „Failover Cluster instance“ (taip arba ne).

Net

dbnmpntw nurodo pavadintą kanalą, o dbmssocn nurodo TCP/IP.

PWD

„SQL Server“ prisijungimo slaptažodis.

QueryLog_On

Nurodo ilgų užklausų registravimą (taip arba ne).

QueryLogFile

Visas failo, kurį norite naudoti, kad galėtumėte registruoti duomenis ilgose užklausose, adresas ir failo vardas.

QueryLogTime

Skaitmenų simbolio eilutė, nurodanti, kiek laiko (milisekundėmis) yra skirta registruoti ilgoms užklausoms.

Pasiūlymo ID

Nurodo, ar SQL serveris naudoja ISO taisykles, susijusias su kabučių naudojimu SQL sakiniuose (taip arba ne).

Regioninis

Nurodo, ar „SQL Server Native Client“ ODBC tvarkyklė naudoja kliento parametrus, kai konvertuoja valiutos, datos ar laiko duomenis į simbolio duomenis (taip arba ne).

Įrašyti failą

ODBC duomenų šaltinio failo, į kurį yra įrašomi esamo ryšio atributai, pavadinimas, jei ryšys yra sėkmingas.

Serveris

„SQL Server“ egzemplioriaus pavadinimas: Serveris tinkle, IP adresas arba konfigūracijos tvarkytuvo pseudonimas.

ServerSPN

Serverio SPN.

StatsLog_On

Įgalinami užfiksuoti „SQL Server Native Client“ ODBC tvarkyklės produktyvumo duomenys.

Statdevifile

Visas failo kelias ir failo, naudojamo „SQL Server Native Client“ ODBC tvarkyklės produktyvumo statistikai įrašyti, vardas.

Trusted_Connection

Nurodo, ar „Windows“ autentifikavimo režimas arba „SQL Server“ vartotojo vardas arba slaptažodis naudojamas prisijungimui patvirtinti (taip arba ne).

TrustServerCertificate

Kai naudojama su šifravimu, įgalina šifravimą naudojant vartotojo pasirašomą serverio sertifikatą.

UID

„SQL Server“ prisijungimo vardas.

UseProcForPrepare

Atšauktas raktažodis.

WSID

Darbo vietos identifikatorius, kompiuterio, kuriame yra taikomoji programa, tinklo pavadinimas.

Puslapio viršus

OLE DB raktažodžių suvestinė

Toliau pateiktoje lentelėje apibendrinami OLE DB raktažodžiai, kuriuos atpažįsta „QL Server“, ir jų paskirtis. „Access“ atpažįsta tik pogrupį.

Raktažodis

Aprašas

Addr

Serverio, kuriame veikia „SQL Server“ egzempliorius, tinklo adresas.

APP

Programą identifikuojanti eilutė.

ApplicationIntent

Deklaruoja taikomosios programos darbo krūvį, kai jungiasi prie serverio (tik skaityti arba skaityti ir rašyti).

AttachDBFileName

Galimos pridėti duomenų bazės pirminio failo vardas.

AutoTranslate

Konfigūruoja OĮG/ANSI simbolių vertimą (TRUE (teisinga) arba FALSE (klaidinga).

Prisijungti skirtasis laikas

Laikas (sekundėmis), kol laukiama, kol bus baigta duomenų šaltinio iniciacija.

Dabartinė kalba

„SQL Server“ kalbos pavadinimas.

Duomenų šaltinis

Organizacijoje esančio „SQL Server“ egzemplioriaus pavadinimas.

Duomenų bazė

Duomenų bazės pavadinimas.

DataTypeCompatibility

Skaičius, nurodantis duomenų tipo tvarkymo režimą, kuris bus naudojamas.

Šifruoti

Nurodykite, ar duomenys turėtų būti užšifruoti prieš siunčiant juos tinklu (taip arba ne).

FailoverPartner

Permetimo serverio, naudojamo duomenų bazės atvaizdavimo tikslais, pavadinimas.

FailoverPartnerSPN

Permetimo partnerio SPN.

Pradinis katalogas

Duomenų bazės pavadinimas.

Pradinis failo vardas

Pridedamos duomenų bazės pradinis failo vardas (apima visa duomenų bazės kelio pavadinimą).

Integruota sauga

Naudota „Windows“ autentifikavimui (SSPI).

Kalba

„SQL Server“ kalba.

MarsConn

Nurodo keletą aktyvių „SQL Server 2005“ (9.x) arba vėlesnės versijos (taip arba ne) jungimosi rezultatų rinkinių (MARS).

Tinklas

Tinklo biblioteka, naudojama ryšiui su „ SQL Server“ organizacijoje sukurti.

Tinklo adresas

Organizacijoje esančio „SQL Server“ egzemplioriaus tinklo pavadinimas.

PacketSize

Tinklo paketo dydis. Numatytoji reikšmė yra 4096.

Išlieka saugos informacija

Nurodo, ar įgalinta sauga (TRUE (teisinga) arba FALSE (klaidinga).

PersistSensitive

Nurodo, ar įgalintas slaptumas (TRUE (teisinga) arba FALSE (klaidinga).

Teikimo įrankis

„SQL Server Native Client“ reikia SQLNCLI11.

PWD

„SQL Server“ prisijungimo slaptažodis.

Serveris

„SQL Server“ egzemplioriaus pavadinimas: Serveris tinkle, IP adresas arba konfigūracijos tvarkytuvo pseudonimas.

ServerSPN

Serverio SPN.

Skirtasis laikas

Laikas (sekundėmis), kol laukiama, kol bus baigta duomenų šaltinio iniciacija.

Trusted_Connection

Nurodo, ar „Windows“ autentifikavimo režimas arba „SQL Server“ vartotojo vardas arba slaptažodis naudojamas prisijungimui patvirtinti (taip arba ne).

TrustServerCertificate

Nurodo, ar serverio sertifikatas patvirtintas (TRUE (teisinga) arba FALSE (klaidinga).

UID

„SQL Server“ prisijungimo vardas.

Duomenų šifravimo naudojimas

Nurodykite, ar duomenys turėtų būti užšifruoti prieš siunčiant juos tinklu (TRUE (teisinga) arba FALSE (klaidinga).

UseProcForPrepare

Atšauktas raktažodis.

WSID

Darbo vietos identifikatorius, kompiuterio, kuriame yra taikomoji programa, tinklo pavadinimas.

Puslapio viršus

ODBC duomenų šaltinių administravimas

Susietų lentelių tvarkymas

Reikia daugiau pagalbos?

Norite daugiau parinkčių?

Sužinokite apie prenumeratos pranašumus, peržiūrėkite mokymo kursus, sužinokite, kaip apsaugoti savo įrenginį ir kt.

Bendruomenės padeda užduoti klausimus ir į juos atsakyti, pateikti atsiliepimų ir išgirsti iš ekspertų, turinčių daug žinių.