Prisetite se detinjstva kada ste voleli da jedete supu sa slovima. Zadržite ta sećanja u mislima dok isprobavamo verziju supe sa slovima u vidu baze podataka. Sledeći odeljci označavaju osnove pristupa bazi podataka pomoću niski za povezivanje i korišćenje interfejsa za programiranje baze podataka u Access VBA kodu.
U ovom članku:
Korišćenje ODBC upravljačkog programa ili OLE DB dobavljača
Programski interfejs za SQL Server iz programa Access
Rezime verzija ODBC upravljačkih programa
Korišćenje ODBC upravljačkog programa ili OLE DB dobavljača
Niske za povezivanje su prisutne već duže vreme. Oblikovanu nisku veze možete definisati u Access korisničkom interfejsu ili u VBA kodu. Niska veze (bilo ODBC ili OLE DB) direktno u bazu podataka šalje informacije kao što je lokacija servera, ime baze podataka, tip bezbednosti i druge korisne opcije. Na primer:
ODBC;DRIVER=SQL Server;SERVER="MyServer";DATABASE="MyHRdb";TRUSTED_CONNECTION=Yes
Provider=SQLOLEDB;Data Source=MyServer;Initial Catalog=MyHRdb; Integrated Security=SSPI;
U početku je postojao samostalni SQL Server Native Client (SNAC), samostalna biblioteka koja je sadržala ODBC i OLEDB tehnologiju i koja je i dalje dostupna za SQL Server verzije 2005 do 2012. Mnoge zastarele aplikacije koristile su SNAC i još uvek je podržana za kompatibilnost sa prethodnim verzijama, ali ne preporučujemo da je koristite za razvoj novih aplikacija. Trebalo bi da koristite novije pojedinačne verzije ODBC upravljačkih programa koje se mogu preuzeti.
ODBC upravljački programi
Open Database Connectivity (ODBC) jeste protokol koji možete da koristite za povezivanje Microsoft Access baze podataka sa spoljnim izvorom podataka kao što je Microsoft SQL Server. Obično koristite datoteke izvore podataka (nazivaju se i DSN datoteke) da biste dodali nisku veze, kada se koristi ključna reč FILEDSN za nisku veze ili je uskladištena u registratoru, kada se koristi ključna reč DSN. Osim toga, VBA možete da koristite da biste postavili ova svojstva pomoću niske veze „DSN-less”.
Tokom godina, ODBC upravljački programi isporučivani su u tri faze:
-
Pre 2005. godine, ODBC upravljački programi isporučivani su pomoću Windows Data Access komponenti (WDAC), koje su se prvobitno nazivale Microsoft Data Access Components (MDAC). Ove komponente se i dalje isporučuju uz Windows operativni sistem radi kompatibilnosti sa prethodnim verzijama. Više informacija potražite u članku Microsoft ili Windows Access Components.
-
ODBC upravljački programi koji se isporučuju sa SNAC za verzije SQL Server 2005 do SQL Server 2012.
-
Posle SQL Server 2012, ODBC upravljački programi su zasebno isporučivani i sadrže podršku za nove SQL Server funkcije.
Za novi razvoj izbegavajte korišćenje ODBC upravljačkih programa iz prve dve faze, a koristite ODBC upravljačke programe iz treće faze.
OLE DB dobavljači
Object Linking and Embedding, Database (OLE DB) jeste noviji protokol koji možete da koristite za povezivanje Microsoft Access baze podataka sa spoljnim izvorom podataka kao što je Microsoft SQL Server. OLE DB ne zahteva DSN i takođe omogućava potpuni pristup ODBC izvorima podataka i ODBC upravljačkim programima.
Savet Obično koristite dijalog Svojstva veze ka podacima da biste dodali OLE DB nisku veze. Iako ne postoji način da u programu Access otvorite Svojstva veze ka podacima, u programu Windows Explorer možete da kreirate praznu. txt datoteku, promenite tip datoteke u. udl, a zatim kliknite dvaput na datoteku. Kada kreirate nisku veze, promenite tip datoteke nazad u. txt.
Tokom godina, OLE DB dobavljači isporučivani su u tri faze:
-
Pre 2005. godine, OLE DB dobavljači isporučivani su pomoću Windows Data Access komponenti (WDAC), koje su se prvobitno nazivale Microsoft Data Access Components (MDAC).
-
OLE DB dobavljači su isporučivani sa verzijama SQL Server 2005 do SQL Server 2017. Oni su zastareli 2011. godine.
-
U 2017. godini, SQL Server OLE DB dobavljač je ponovo vraćen u upotrebu.
Trenutno preporučena verzija za razvoj novih rešenja je OLE DB upravljački program 18 za SQL Server.
Kako da optimizujete performanse pomoću ODBC niske veze
Da biste optimizovali performanse, smanjili mrežni saobraćaj i smanjili broj korisnika koji pristupaju SQL Server bazi podataka, koristite sto je moguće manje niski za povezivanje tako što ćete deliti niske veze na više skupova zapisa. Iako Ace jednostavno prenosi nisku veze na server, on razume i koristi sledeće ključne reči: DSN, DATABASE, UID, PWD i DRIVER pomažu da se komunikacija između klijenta i servera svede na minimum.
Napomena Ako se izgubi ODBC veza sa spoljnim izvorom podataka, Access automatski pokušava da se ponovo poveže sa njom. Ako je ponovni pokušaj uspešan, možete da nastavite da radite. Ako ponovni pokušaj ne uspe, i dalje možete da radite sa objektima koji se ne oslanjaju na vezu. Da biste se ponovo povezali, zatvorite i ponovo otvorite Access.
Preporuke pri korišćenju ODBC i OLE DB
Izbegavajte mešanje niske veze i tehnologija pristupa bazi podataka. Koristite ODBC nisku veze za DAO. Koristite OLE DB nisku veze za ADO. Ako vaša aplikacija sadrži VBA kôd koji koristi DAO i ADO, koristite ODBC upravljački program za DAO i OLE DB dobavljač za ADO. Potrudite se da obezbedite najnovije funkcije i podršku za ODBC i OLEDB.
ODBC koristi tremin pogonski program a OLE DB koristi termin dobavljač. Termini opisuju isti tip softverske komponente, ali ne mogu da se zamene u sintaksi niske veze. Koristite ispravnu vrednost kao što je dokumentovano.
Programski interfejs za SQL Server iz programa Access
Postoje dva glavna načina za programiranje interfejsa za SQL Server bazu podataka iz programa Access.
DAO
Objekat pristupa podacima (DAO) predstavlja apstraktan interfejs za bazu podataka. Microsoft Data Access Objects (DAO) je izvorni model programskog objekta koji vam omogućava da dođete do srži Access i SQL Servera da biste kreirali, brisali, menjali i nabrajali objekte, tabele, polja, indekse, odnose, upite, svojstva i spoljne baze podataka.
Više informacija potražite u članku Literatura za Microsoft Data Access Objects.
ADO
ActiveX Data Objects (ADO) pruža programski model za programiranje visokog nivoa i dostupan je u programu Access putem pozivanja na biblioteku nezavisnih proizvođača. ADO je jednostavan za učenje i klijentskim aplikacijama omogućava pristupanje i manipulisanje podacima iz različitih izvora, uključujući Access i SQL Server. Njegove primarne prednosti su jednostavna upotreba, velika brzina, niska potrošnja memorije i mala veličina na disku. ADO takođe podržava ključne funkcije za pravljenje aplikacija zasnovanih na vebu.
Više informacija potražite u članku Literatura za ActiveX Data Objects i Microsoft ActiveX Data Objects (ADO).
Koju da koristite?
U Access rešenju koje koristi VBA kôd, možete da koristite DAO, ADO ili oba kao tehnologiju interfejsa sa bazom podataka. DAO je i dalje podrazumevani u programu Access. Na primer, svi obrasci i izveštaji i Access upiti koriste DAO. Ali kada migrirate u SQL Server, uzmite u razmatranje korišćenje ADO da bi rešenje bilo efikasnije. Evo opštih smernica koje će vam pomoći da odlučite kada da koristite DAO ili ADO.
Koristite DAO ako želite da:
-
Kreirate povezanog obrasca za čitanje/pisanje bez korišćenja VBA.
-
Vršite pretragu lokalnih tabela.
-
Preuzmete podatke u privremene tabele.
-
Koristite prolazne upite kao izvore podataka za izveštaje ili obrasce u režimu samo za čitanje.
-
Definišete i koristite objekat TableDef ili QueryDef u programu VBA.
Koristite ADO ako želite da:
-
Iskoristite dodatne načine za optimizovanje, kao što su izvršavanje asinhronih operacija.
-
Pokrenete prolazne DDL i DML upite.
-
Dođete do SQL Server podataka direktno putem grupa zapisa u VBA programu.
-
Pišete jednostavniji kôd za određene zadatke, kao što je protok Blobova.
-
Pozivate uskladištene procedure direktno, pomoću parametara, korišćenjem komandnog objekta u VBA programu.
Rezime verzija ODBC upravljačkih programa
Sledeća tabela rezimira važne informacije o ODBC verzijama upravljačkog programa, lokacijama za preuzimanje i podršci za funkcije. Uverite se da koristite ispravnu bitnu verziju (64-bitnu ili 32-bitnu) upravljačkog programa na osnovu operativnog sistema Windows, a ne sistema Office. Ako koristite 32-bitni Access na 64-bitnom Windows operativnom sistemu, instalirajte 64-bitne upravljačke programe, koji sadrže 32-bitne komponente potrebne za program Access.
Više informacija potražite u članku Korišćenje ključnih reči za nisku za povezivanje sa SQL Server Native Client, Napomene uz izdanje za ODBC na SQL server na Windows operativnom sistemu (v17) i Funkcije Microsoft ODBC upravljačkog programa za SQL Server na Windows operativnom sistemu (v13, 11).
Rezime verzija OLE DB dobavljača
Sledeća tabela rezimira važne informacije o verzijama OLE DB dobavljača, lokacijama za preuzimanje i podršci za funkcije. Uverite se da koristite ispravnu bitnu verziju (64-bitnu ili 32-bitnu) upravljačkog programa na osnovu operativnog sistema Windows, a ne sistema Office. Ako koristite 32-bitni Access na 64-bitnom Windows operativnom sistemu, instalirajte 64-bitne upravljačke programe, koji sadrže 32-bitne komponente potrebne za program Access.
Više informacija potražite u članku Korišćenje ključnih reči niske za povezivanje sa SQL Server izvornim klijentom.
OLE DB dobavljač |
Verzija |
Preuzmi |
Nove funkcije |
OLE DB upravljački program 18.2.1 (MSOLEDBSQL) |
SQL Server 2017 |
Pogledajte OLE DB upravljački program za SQL Server funkciju i Napomene uz izdanje za Microsoft OLE DB upravljački program za SQL Server |
|
SQL Server Native Client (SQLNCLI) |
SQL Server 2005 do 2012 |
Zastarelo, ne koristite |
|
OLE DB upravljački program (SQLOLEDB) |
Zastarelo, ne koristite |
Rezime ODBC ključne reči
Sledeća tabela rezimira ODBC ključne reči koje prepoznaje SQL Server i njihovu svrhu. Access prepoznaje samo podskup.
Ključna reč |
Opis |
Addr |
Mrežna adresa servera na kome je pokrenuta instanca sistema SQL Server. |
AnsiNPW |
Navodi upotrebu ANSI-definisanih ponašanja za upravljanje NULL poređenjima, popunjavanje znakova, upozorenja i NULL konkatenaciju (Da ili Ne). |
APP |
Ime aplikacije koja poziva SQLDriverConnect. |
ApplicationIntent |
Objavljuje tip radnog opterećenja aplikacije prilikom povezivanja sa serverom (Samo za čitanje ili ČitanjePisanje). |
AttachDBFileName |
Ime primarne datoteke baze podataka. |
AutoTranslate |
Precizira da li se ANSI niske znakova šalju između klijenta ili servera ili se prevode u Unikod (da ili ne). |
Baza podataka |
Ime baze podataka. Opis Svrha veze. Upravljački program Ime upravljačkog programa koje vraćaju SQL upravljački programi. |
DSN |
Ime postojećeg ODBC korisnika ili izvora podataka sistema. Šifruj Precizira da li podaci treba da se šifruju pre slanja putem mreže (Da ili Ne). |
Failover_Partner |
Ime partner servera za preuzimanje posla koji se koristi u slučaju da ne može da se uspostavi veza sa primarnim serverom. |
FailoverPartnerSPN |
SPN za partner server za preuzimanje rada. |
Fallback |
Zastarela ključna reč. |
FileDSN |
Ime postojeće datoteke ODBC izvora podataka. Jezik Jezik SQL servera |
MARS_Connection |
Određuje više aktivnih skupova rezultata (MARS) u vezi sa sistemom SQL Server 2005 (9. x/) ili novijim (da ili ne). |
MultiSubnetFailover |
Određuje da li se treba povezati sa osluškivačem grupe za dostupnost SQL server grupe za dostupnost ili sa instancom klastera za preuzimanje rada (Da ili Ne). |
Net |
dbnmpntw označava imenovane kanale i dbmssocn označava TCP/IP. |
PWD |
Lozinka za prijavu za SQL Server. |
QueryLog_On |
Precizira evidentiranje upita dugotrajnih upita (da ili ne). |
QueryLogFile |
Kompletna putanja i ime datoteke koje će se koristi za evidenciju podataka o dugotrajnim upitima. |
QueryLogTime |
Niska cifara koja precizira graničnu vrednost (u milisekundama) za evidentiranje dugotrajnih upita. |
QuotedId |
Određuje da li SQL server koristi ISO pravila u vezi sa upotrebom navodnika u SQL izjavama (da ili ne). |
Regional |
Određuje da li ODBC upravljački program izvornog klijenta SQL servera koristi podešavanja klijenta kada konvertuje valutu, datum ili vreme u znakovne podatke (Da ili Ne). |
SaveFile |
Ime datoteke ODBC izvora podataka u kojoj se čuvaju atributi aktuelne veze ako je veza uspešna. |
Server |
Ime SQL Server instance: Server na mreži, IP adresa ili pseudonim upravljača konfigurisanja. |
ServerSPN |
SPN za server. |
StatsLog_On |
Omogućava hvatanje podataka o efikasnosti ODBC upravljačkog programa za SQL Server za izvorni klijent. |
StatsLogFile |
Kompletna putanja i ime datoteke koja se koristi za snimanje statističkih podataka o performansama ODBC upravljačkog programa izvornog klijenta SQL servera. |
Trusted_Connection |
Određuje da li se režim Windows potvrde identiteta ili SQL Server korisničko ime ili lozinka koriste za proveru valjanosti prijavljivanja (da ili ne). |
TrustServerCertificate |
Kada se koristi sa šifriranjem, omogućava šifrovanje pomoću samopotpisanog certifikata servera. |
UID |
Ime za prijavu za SQL Server. |
UseProcForPrepare |
Zastarela ključna reč. |
WSID |
Identifikator radne stanice, mrežno ime računara na kom se nalazi aplikacija. |
Rezime OLE DB ključne reči
Sledeća tabela rezimira OLE DB ključne reči koje prepoznaje SQL Server i kao njihovu svrhu. Access prepoznaje samo podskup.
Ključna reč |
Opis |
Addr |
Mrežna adresa servera na kome je pokrenuta instanca sistema SQL Server. |
APP |
Niska koja identifikuje aplikaciju. |
ApplicationIntent |
Objavljuje tip radnog opterećenja aplikacije prilikom povezivanja sa serverom (Samo za čitanje ili ČitanjePisanje). |
AttachDBFileName |
Ime primarne datoteke baze podataka. |
AutoTranslate |
Konfiguriše prevođenje OEM/ANSI znakova (tačno ili netačno). |
Vremensko ograničenje povezivanja |
Vremenski period (u sekundama) koji treba da prođe da bi se dovršilo pokretanje izvora podataka. |
Aktuelni jezik |
Ime jezika SQL servera |
Izvor podataka |
Ime instance sistema SQL Server u organizaciji. |
Baza podataka |
Ime baze podataka. |
Kompatibilnost tipa podataka |
Broj koji označava režim upravljanja tipom podataka koji će se koristiti. |
Šifruj |
Precizira da li podaci treba da se šifruju pre slanja putem mreže (Da ili Ne). |
FailoverPartner |
Ime servera za preuzimanje posla koji se koristi za preslikavanje baze podataka. |
FailoverPartnerSPN |
SPN za partner server za preuzimanje rada. |
Početni katalog |
Ime baze podataka. |
Početno ime datoteke |
Ime primarne datoteke (uključuje ime kompletne putanje) baze podataka. |
Integrisana bezbednost |
Koristi se za Windows potvrdu identiteta (SSPI). |
Jezik |
Jezik SQL servera |
MarsConn |
Određuje više aktivnih skupova rezultata (MARS) u vezi sa sistemom SQL Server 2005 (9. x/) ili novijim (da ili ne). |
Net |
Mrežna biblioteka koja se koristi za uspostavljanje veze sa instancom sistema SQL Server u organizaciji. |
Mrežna adresa |
Mrežna adresa instance sistema SQL Server u organizaciji. |
Veličina paketa |
Veličina mrežnog paketa. Podrazumevana vrednost je 4096. |
Zadrži informacije o bezbednosti |
Navodi da li je funkcija "zadržavanje bezbednost" omogućena (tačno ili netačno). |
PersistSensitive |
Određuje da li je funkcija „persist sensitive“ omogućena (tačno ili netačno). |
Dobavljač |
Za SQL Server izvorni klijent ovo bi trebalo da bude SQLNCLI11. |
PWD |
Lozinka za prijavu za SQL Server. |
Server |
Ime SQL Server instance: Server na mreži, IP adresa ili pseudonim upravljača konfigurisanja. |
ServerSPN |
SPN za server. |
Timeout |
Vremenski period (u sekundama) koji treba da prođe da bi se dovršilo pokretanje izvora podataka. |
Trusted_Connection |
Određuje da li se režim Windows potvrde identiteta ili SQL Server korisničko ime ili lozinka koriste za proveru valjanosti prijavljivanja (da ili ne). |
TrustServerCertificate |
Određuje da li se vrši provera valjanosti certifikata za server. |
UID |
Ime za prijavu za SQL Server. |
Korišćenje šifrovanja za podatke |
Određuje da li podaci treba da se šifruju pre slanja putem mreže (Tačno ili Netačno). |
UseProcForPrepare |
Zastarela ključna reč. |
WSID |
Identifikator radne stanice, mrežno ime računara na kom se nalazi aplikacija. |