Access savienojuma izveide ar SQL Server
Applies ToAccess pakalpojumam Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Atsauciet atmiņā to laimīgo periodu, kad pārmērīgs dažādu akronīmu lietojums nesagādāja galvassāpes. Paturiet prātā šīs laimīgās domas, kamēr mēs jums pastāstām par datu bāzu specifiskajiem akronīmiem. Nākamajās sadaļās ir izklāstīta pamatinformācija par datu bāzes izveidi, izmantojot savienojuma virknes, un datu bāzu programmēšanas interfeisa izmantošanu Access VBA kodā.

Datu piekļuves komponenti

Šajā rakstā

ODBC draivera vai OLE DB nodrošinātāja izmantošana

Programmatiska datu apstrāde no Access uz SQL Server

ODBC draiveru versiju kopsavilkums

OLE DB nodrošinātāju versiju kopsavilkums

ODBC atslēgvārdu kopsavilkums

OLE DB atslēgvārdu kopsavilkums

ODBC draivera vai OLE DB nodrošinātāja izmantošana

Savienojuma virknes pastāv jau ilgu laiku. Varat definēt formatētu savienojuma virkni vai nu Access lietotāja interfeisā, vai VBA kodā. Savienojuma virkne (ODBC vai OLE DB) pārnes informāciju tieši uz datu bāzi, piemēram, servera atrašanās vietu, datu bāzes nosaukumu, drošības tipu un citas noderīgas iespējas. Piemērs.

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

Sākumā tika lietota SQL Server Native Client (SNAC) — savrupa bibliotēka, kurā ir iekļautas ODBC un OLEDB tehnoloģijas, un tā joprojām ir pieejama SQL Server 2005–2012 versijās. Daudzas mantotās lietojumprogrammas izmantoja SNAC, un tas joprojām tiek atbalstīts atpakaļsaderības nodrošināšanai, taču mēs neiesakām to izmantot jaunu lietojumprogrammu izstrādei. Tā vietā izmantojiet jaunākas atsevišķas, lejupielādējamas ODBC draiveru versijas.

ODBC draiveri

Atvērto datu bāzu savienojamība (Open Database Connectivity — ODBC) ir protokols, ko var izmantot, lai savienotu Access datu bāzi ar ārēju datu avotu, piemēram, Microsoft SQL Server. Parasti failu datu avoti (dēvēti arī par DSN failiem) tiek izmantoti, lai pievienotu savienojuma virkni (šādā gadījumā atslēgvārds FILEDSN tiek lietots savienojuma virknē vai tiek saglabāts reģistrā (tad tiek izmantots DSN atslēgvārds)). Varat arī izmantot VBA, lai iestatītu šos rekvizītus, izmantojot savienojuma virknes "bez DNS".

Gadu gaitā ODBC draiveri ir tikuši sūtīti trīs posmos:

  • Pirms 2005. gada versijas ODBC draiveri tika sūtīti ar Windows datu piekļuves komponentiem (Windows Data Access Components — WDAC), kas sākotnēji tika dēvēti par Microsoft datu piekļuves komponentiem (Microsoft Data Access Components — MDAC). Šie komponenti joprojām tiek sūtīti ar Windows, lai nodrošinātu atpakaļsaderību. Papildinformāciju skatiet rakstā Microsoft vai Windows datu piekļuves komponenti.

  • ODBC draiveri tika sūtīti ar SNAC SQL Server 2005 versiju un jaunākām versijām līdz SQL Server 2012 versijai.

  • Pēc SQL Server 2012 versijas ODBC draiveri tiek sūtīti atsevišķi un ietver atbalstu jaunajiem SQL Server līdzekļiem.

Lai veiktu jaunu izstrādi, neizmantojiet ODBC draiverus no pirmajiem diviem posmiem. Izmantojiet ODBC draiverus no trešā posma.

OLE DB nodrošinātāji

Objektu saistīšanas un iegulšanas datu bāze (Object Linking and Embedding Database — OLE DB) ir jaunāks protokols, ko var izmantot, lai savienotu Access datu bāzi ar ārēju datu avotu, piemēram, Microsoft SQL Server. OLE DB izmantošanai nav nepieciešams DSN, un tas nodrošina pilnu piekļuvi ODBC datu avotiem un ODBC draiveriem.

Padoms   . Lai pievienotu OLE DB savienojuma virkni, parasti tiek izmantots dialoglodziņš Datu saišu rekvizīti. Lai gan programmā Windows Explorer nav iespējas atvērt dialoglodziņu Datu saišu rekvizīti, varat izveidot tukšu .txt failu, nomainīt faila tipu uz .udl un pēc tam veikt dubultklikšķi uz faila. Pēc tam, kad esat izveidojis savienojuma virkni, nomainiet faila tipu atpakaļ uz .txt.

Gadu gaitā OLE DB nodrošinātāji ir tikuši sūtīti trīs posmos:

  • Pirms 2005. gada versijas OLE DB nodrošinātāji tika sūtīti ar Windows datu piekļuves komponentiem (Windows Data Access Components — WDAC), kas sākotnēji tika dēvēti par Microsoft datu piekļuves komponentiem (Microsoft Data Access Components — MDAC).

  • OLE DB nodrošinātāji tika sūtīti ar SNAC SQL Server 2005 versiju un jaunākām versijām līdz SQL Server 2017 versijai. Tas tika atzīts par novecojušu 2011. gadā.

  • 2017. gadā SQL Server OLE DB nodrošinātāja novecošanas statuss tika atcelts.

Pašlaik ieteiktā jauna risinājuma izstrādes versija ir OLE DB draiveris 18 darbam ar SQL Server.

Veiktspējas optimizēšana, izmantojot ODBC savienojuma virkni

Lai optimizētu veiktspēju, samazinātu tīkla trafiku un samazinātu vairāku lietotāju piekļuvi SQL Server datu bāzei, izmantojiet pēc iespējas mazāk savienojuma virkņu, kopīgojot savienojuma virknes vairākās ierakstu kopās. Lai gan Ace vienkārši pārsūta savienojuma virkni uz serveri, tas saprot un izmanto šādus atslēgvārdus: DSN, DATABASE, UID, PWD un DRIVER, lai palīdzētu samazināt klienta/servera saziņu.

Piezīme    Ja tiek zaudēts ODBC savienojums ar ārēju datu avotu, programma Access automātiski mēģina atkārtoti izveidot savienojumu ar to. Ja atkārtotais mēģinājums ir sekmīgs, varat turpināt darbu. Ja atkārtotais mēģinājums ir neveiksmīgs, varat strādāt ar objektiem, kas nav atkarīgi no savienojuma. Lai atkārtoti izveidotu savienojumu, aizveriet un vēlreiz atveriet programmu Access.

Ieteikumi, izmantojot gan ODBC, gan OLE DB

Izvairieties no savienojuma virkņu un datu bāzu piekļuves tehnoloģiju apvienošanas. DAO objektiem izmantojiet ODBC savienojuma virkni. ADO objektiem izmantojiet OLE DB savienojuma virkni. Ja jūsu lietojumprogrammā ir VBA kods, kas izmanto gan DAO, gan ADO, DAO objektiem izmantojiet ODBC draiveri, bet ADO objektiem — OLE DB nodrošinātāju. Mēģiniet iegūt jaunākos ODBC un OLEDB līdzekļus un atbalstu.

ODBC izmanto terminu draiveri, bet OLE DB — terminu nodrošinātāju. Termini apraksta viena un tā paša tipa programmatūras komponentu, bet nav savstarpēji aizvietojami savienojuma virkņu sintaksē. Izmantojiet pareizās vērtības, kā norādīts dokumentācijā.

Uz lapas sākumu

Programmatiska datu apstrāde no Access uz SQL Server

Ir divi galvenie veidi, kā programmatiski apstrādāt datus no Access uz SQL Server datu bāzi.

DAO

Datu piekļuves objekts (DAO) nodrošina abstraktu datu apstrādi uz datu bāzei. Microsoft datu piekļuves objekti (DAO) ir iebūvētais programmēšanas objektu modelis, kas sniedz iespēju izmantot Access un SQL Server, lai izveidotu, dzēstu, modificētu un uzskaitītu objektus, tabulas, laukus, indeksus, relācijas, vaicājumus, rekvizītus un ārējās datu bāzes.

Papildinformāciju skatiet rakstā Microsoft datu piekļuves objektu atsauce.

ADO

ActiveX datu objekti (ADO) nodrošina augsta līmeņa programmēšanas modeli, kas ir pieejams programmā Access, izmantojot atsauci uz trešo pušu bibliotēku. ADO ir vienkārši apgūstama metode, kas ļauj klienta lietojumprogrammām piekļūt un manipulēt datus no dažādiem avotiem, tostarp Access un SQL Server. Tās primārie ieguvumi ir lietošanas ērtums, ātrdarbība, zems atmiņas lietojums un niecīga aizņemta vieta diskā. ADO atbalsta arī galvenos līdzekļus, kas paredzēti izstrādei un tīmekļa lietojumprogrammām.

Papildinformāciju skatiet rakstā Microsoft ActiveX datu objektu atsauce un Microsoft ActiveX datu objekti (ADO).

Kuru izmantot?

Access risinājumā, kas izmanto VBA kodu, varat izmantot DAO, ADO (vai abus) kā datu bāzes interfeisa tehnoloģiju. Programmā Access pēc noklusējuma joprojām tiek izmantots DAO. Piemēram, visas formas, atskaites un Access vaicājumi izmanto DAO. Taču, ja migrējat uz SQL Server, apsveriet iespēju izmantot ADO, lai risinājums būtu efektīvāks. Tālāk norādītas vispārīgas vadlīnijas, kas palīdzēs izlemt, kad izmantot DAO vai ADO.

Izmantojiet DAO, lai:

  • Izveidotu lasāmu/rakstāmu, saistītu formu, neizmantojot VBA.

  • Veiktu vaicājumus lokālās tabulās.

  • Lejupielādētu datus pagaidu tabulās.

  • Izmantotu tranzītvaicājumus kā datu avotus atskaitēm vai formām tikai lasīšanas režīmā.

  • Definētu un izmantotu TableDef vai objektu QueryDef valodā VBA.

Izmantojiet ADO, lai:

  • Izmantotu papildu optimizēšanas veidus, piemēram, asinhronu darbību veikšanu.

  • Izpildītu DDL un DML tranzītvaicājumus.

  • Piekļūtu SQL Server datiem tieši, izmantojot VBA ierakstkopas.

  • Uzrakstītu vienkāršāku kodu noteiktiem uzdevumiem, piemēram, BLOB straumēšanai.

  • Tieši izsauktu saglabātu procedūru ar parametriem, izmantojot VBA komandu objektu.

Uz lapas sākumu

ODBC draiveru versiju kopsavilkums

Tālāk sniegtajā tabulā ir apkopota svarīga informācija par ODBC draiveru versijām, lejupielāžu atrašanās vietām un līdzekļu atbalstu. Pārliecinieties, vai izmantojat draivera pareizo bitu versiju (64 bitu vai 32 bitu), pamatojoties uz Windows, nevis Office. Ja 64 bitu Windows versijā darbojas 32 bitu Access versija, instalējiet 64 bitu draiverus, kuros ir iekļauti programmai Access nepieciešamie 32 bitu komponenti.

Papildinformāciju skatiet rakstā Savienojuma virkņu atslēgvārdu lietošana ar SQL Server Native Client, ODBC piezīmes par laidienu serverim SQL Server operētājsistēmā Windows (V17) un Microsoft ODBC draivera līdzekļi darbam ar SQL Server operētājsistēmā Windows (V13, 11).

ODBC draiveri

Versija

Lejupielāde

Jauni līdzekļi

ODBC draiveri 17.0 līdz 17.3

SQL Server 2017

Lejupielādēt

ODBC draiveris 17.3

Azure Active Directory lietošana ar ODBC draiveri

ODBC draivera ierobežojumi, izmantojot līdzekli Always Encrypted

XA transakciju izmantošana

ODBC draiveris 17.2

Always Encrypted izmantošana ar ODBC draiveri darbam ar SQL Server

Datu klasifikācija

UTF-8 servera kodēšanas komplektēšanas un unikoda atbalsts

ODBC draiveris 17.1

Always Encrypted izmantošana ar ODBC draiveri darbam ar SQL Server

ODBC draiveris 17.0

Always Encrypted

UseFMTONLY    Lai izmantotu mantotos metadatus īpašos gadījumos, kad nepieciešamas pagaidu tabulas. Skatiet rakstu ODBC piezīmes par laidienu serverim SQL Server operētājsistēmā Windows

Atšķirības, izmantojot Managed Instance (ODBC versija 17)

ODBC draiveris 13.1

SQL Server 2016 SP1, SQL Azure

Lejupielādēt

Always Encrypted

Azure Active Directory

AlwaysOn pieejamības grupas

Driver Aware Connection Pooling ODBC draiverim SQL Server

ODBC draiveris 13.0

SQL Server 2016

Lejupielādēt

Internacionalizēts domēna nosaukums (IDN)

ODBC draiveris 11.0

SQL Server 2005 līdz 2012

Lejupielādēt

Driver-Aware Connection Pooling

Savienojuma elastība Windows ODBC draiverī

Asinhronā izpilde

Pakalpojumu primārie nosaukumi (SPN) klienta savienojumos (ODBC)

Microsoft ODBC draivera līdzekļi darbam ar SQL Server operētājsistēmā Windows

Uz lapas sākumu

OLE DB nodrošinātāju versiju kopsavilkums

Tālāk sniegtajā tabulā ir apkopota svarīga informācija par OLE DB nodrošinātāju versijām, lejupielāžu atrašanās vietām un līdzekļu atbalstu. Pārliecinieties, vai izmantojat draivera pareizo bitu versiju (64 bitu vai 32 bitu), pamatojoties uz Windows, nevis Office. Ja 64 bitu Windows versijā darbojas 32 bitu Access versija, instalējiet 64 bitu draiverus, kuros ir iekļauti programmai Access nepieciešamie 32 bitu komponenti.

Papildinformāciju skatiet rakstā Savienojuma virkņu atslēgvārdu lietošana, izmantojot SQL Server Native Client.

OLE DB nodrošinātājs

Versija

Lejupielāde

Jauni līdzekļi

OLE DB draiveris 18.2.1

(MSOLEDBSQL)

SQL Server 2017

Lejupielādēt

Skatiet rakstu OLE DB draiveris SQL Server līdzeklim un Microsoft OLE DB draivera laidienu piezīmes serverim SQL Server

SQL Server Native Client (SQLNCLI)

SQL Server 2005 līdz 2012

Novecojis, neizmantot

OLE DB draiveris (SQLOLEDB)

Novecojis, neizmantot

Uz lapas sākumu

ODBC atslēgvārdu kopsavilkums

Tālāk norādītajā tabulā ir apkopoti ODBC atslēgvārdi, ko atpazīst SQL Server, un to mērķis. Access atpazīst tikai apakškopu.

Atslēgvārds

Apraksts

Addr

Tā servera tīkla adrese, kurā darbojas SQL Server instance.

AnsiNPW

Norāda ANSI definēto darbību lietojumu vērtību NULL salīdzinājumu apstrādei, rakstzīmju datu papildināšanai, brīdinājumiem un vērtību NULL konkatenācijai (Jā vai Nē).

APP

Tās lietojumprogrammas, kurā tiek izsaukts SQLDriverConnect, nosaukums.

ApplicationIntent

Deklarē lietojumprogrammas darba slodzes tipu, izveidojot savienojumu ar serveri (tikai lasāms vai lasāms/rakstāms).

AttachDBFileName

Pievienojamās datu bāzes primārā faila nosaukums.

AutoTranslate

Norāda, vai ANSI rakstzīmju virknes tiek sūtītas starp klientu vai serveri vai tulkotas uz unikodu (Jā vai Nē).

Database

Datu bāzes nosaukums. Apraksts Savienojuma mērķis. Draivera nosaukums, ko atgriež SQLDrivers.

DSN

Esoša ODBC lietotāja vai sistēmas datu avota nosaukums. Encrypt Norāda, vai dati jāšifrē pirms pārsūtīšanas pa tīklu (Jā vai Nē).

Failover_Partner

Kļūmjpārlēces partnera servera nosaukums, kas jāizmanto, ja nevar izveidot savienojumu ar primāro serveri.

FailoverPartnerSPN

Kļūmjpārlēces partnera SPN.

Fallback

Novecojis atslēgvārds.

FileDSN

Esoša ODBC faila datu avota nosaukums. Language SQL Server valoda.

MARS_Connection

Norāda vairākas aktīvo rezultātu kopas (multiple active result sets — MARS) SQL Server 2005 (9.x) vai jaunākas versijas savienojumam (Jā vai Nē).

MultiSubnetFailover

Norāda, vai izveidot savienojumu ar pieejamības grupas klausītāju SQL Server pieejamības grupā vai kļūmjpārlēces klastera instancē (Jā vai Nē).

Net

dbnmpntw norāda nosauktos programmkanālus, bet dbmssocn norāda TCP/IP.

PWD

SQL Server pieteikšanās parole.

QueryLog_On

Norāda ilglaicīgu vaicājumu reģistrēšanu (Jā vai Nē).

QueryLogFile

Pilns tā faila ceļš un faila nosaukums, kas jāizmanto, lai reģistrētu datus ilgtermiņa vaicājumos.

QueryLogTime

Ciparu rakstzīmju virkne, kas norāda slieksni (milisekundēs), lai reģistrētu ilgtermiņa vaicājumus.

QuotedId

Norāda, vai SQL Server izmanto ISO kārtulas, kas attiecas uz pēdiņu lietošanu SQL priekšrakstos (Jā vai Nē).

Regional

Norāda, vai SQL Server Native Client ODBC draiveris izmanto klienta iestatījumus, konvertējot valūtas, datuma vai laika datus uz rakstzīmes datiem (Jā vai Nē).

SaveFile

ODBC datu avota faila nosaukums, kurā tiek saglabāti pašreizējā savienojuma atribūti, ja savienojums ir sekmīgs.

Server

SQL Server instances nosaukums: serveris tīklā, IP adrese vai konfigurācijas pārvaldnieka aizstājvārds.

ServerSPN

Servera SPN.

StatsLog_On

Ļauj tvert SQL Server Native Client ODBC draivera veiktspējas datus.

StatsLogFile

Pilns tā faila ceļš un faila nosaukums, kas tiek lietots, lai reģistrētu SQL Server Native Client ODBC draivera veiktspējas statistiku.

Trusted_Connection

Norāda, vai pieteikšanās validācijai (Jā vai Nē) tiek lietots Windows autentifikācijas režīms vai SQL Server lietotājvārds vai parole.

TrustServerCertificate

Ja tiek izmantots kopā ar šifrēšanu, iespējo šifrēšanu, izmantojot pašparakstītu servera sertifikātu.

UID

SQL Server pieteikšanās vārds.

UseProcForPrepare

Novecojis atslēgvārds.

WSID

Darbstacijas identifikators, tā datora tīkla nosaukums, kurā atrodas lietojumprogramma.

Uz lapas sākumu

OLE DB atslēgvārdu kopsavilkums

Tālāk norādītajā tabulā ir apkopoti OLE DB atslēgvārdi, ko atpazīst SQL Server, un to mērķis. Access atpazīst tikai apakškopu.

Atslēgvārds

Apraksts

Addr

Tā servera tīkla adrese, kurā darbojas SQL Server instance.

APP

Virkne, kas identificē lietojumprogrammu.

ApplicationIntent

Deklarē lietojumprogrammas darba slodzes tipu, izveidojot savienojumu ar serveri (tikai lasāms vai lasāms/rakstāms).

AttachDBFileName

Pievienojamās datu bāzes primārā faila nosaukums.

AutoTranslate

Konfigurē OEM/ANSI rakstzīmju tulkošanu (patiess vai aplams).

Connect Timeout

Laika apjoms (sekundēs), līdz tiek pabeigta datu avotu inicializācija.

Current Language

SQL Server valodas nosaukums.

Data Source

SQL Server instances nosaukums organizācijā.

Database

Datu bāzes nosaukums.

DataTypeCompatibility

Skaitlis, kas norāda datu tipa apstrādes režīmu, kas tiks lietots.

Encrypt

Norāda, vai dati jāšifrē pirms pārsūtīšanas pa tīklu (Jā vai Nē).

FailoverPartner

Tā kļūmjpārlēces servera nosaukums, kas tiek lietots spoguļdatu bāzēs.

FailoverPartnerSPN

Kļūmjpārlēces partnera SPN.

Initial Catalog

Datu bāzes nosaukums.

Initial File Name

Primārā faila nosaukums (ietverts pilns ceļa nosaukums) pievienotajā datu bāzē.

Integrated Security

Tiek izmantots Windows autentifikācijai (SSPI).

Language

SQL Server valoda.

MarsConn

Norāda vairākas aktīvo rezultātu kopas (multiple active result sets — MARS) SQL Server 2005 (9.x) vai jaunākas versijas savienojumam (Jā vai Nē).

Net

Tīkla bibliotēka, kas tiek lietota, lai izveidotu savienojumu ar organizācijas SQL Server instanci.

Network Address

SQL Server instances tīkla adrese organizācijā.

PacketSize

Tīkla pakešu lielums. Noklusējuma iestatījums ir 4096.

Persist Security Info

Norāda, vai ir iespējota drošības saglabāšana (patiess vai aplams).

PersistSensitive

Norāda, vai ir iespējota Persist Sensitive (patiess vai aplams).

Provider

SQL Server Native Client: SQLNCLI11.

PWD

SQL Server pieteikšanās parole.

Server

SQL Server instances nosaukums: serveris tīklā, IP adrese vai konfigurācijas pārvaldnieka aizstājvārds.

ServerSPN

Servera SPN.

Timeout

Laika apjoms (sekundēs), līdz tiek pabeigta datu avotu inicializācija.

Trusted_Connection

Norāda, vai pieteikšanās validācijai (Jā vai Nē) tiek lietots Windows autentifikācijas režīms vai SQL Server lietotājvārds vai parole.

TrustServerCertificate

Norāda, vai servera sertifikāts ir validēts (patiess vai aplams).

UID

SQL Server pieteikšanās vārds.

Use Encryption for Data

Norāda, vai dati jāšifrē pirms pārsūtīšanas pa tīklu (patiess vai aplams).

UseProcForPrepare

Novecojis atslēgvārds.

WSID

Darbstacijas identifikators, tā datora tīkla nosaukums, kurā atrodas lietojumprogramma.

Uz lapas sākumu

ODBC datu avotu administrēšana

Saistīto tabulu pārvaldība

Nepieciešama papildu palīdzība?

Vēlaties vairāk opciju?

Izpētiet abonementa priekšrocības, pārlūkojiet apmācības kursus, uzziniet, kā aizsargāt ierīci un veikt citas darbības.

Kopienas palīdz uzdot jautājumus un atbildēt uz tiem, sniegt atsauksmes, kā arī saņemt informāciju no ekspertiem ar bagātīgām zināšanām.