Access môžete použiť ako klientsku aplikáciu a potom vytvoriť prepojenie na tabuľky na serverovom serveri, ako je napríklad SQL Server. Väčšina dotazov sa predvolene spúšťa lokálne v databázovom stroji ACCESS ACE. V niektorých prípadoch môže Access spustiť dotaz na diaľku na SQL Serveri v závislosti od syntaxe SQL a ďalších faktorov. Ďalšie informácie nájdete v dokumentácii JET a ODBC verzie 3.0: PRIPOJENIE ODBC.
Často však chcete explicitne spustiť dotaz na databázovom serveri. Tento postup môžete použiť na zlepšenie výkonu: databázové servery majú väčší výpočtový výkon ako stolný počítač a menšiu podmnožinu údajov môžete vrátiť cez sieťové pripojenie. Ak chcete spustiť dotaz na databázovom serveri, použite odovzdávajúci dotaz ktorým je príkaz Transact SQL (TSQL), ktorý sa pripája k SQL Serveru pomocou reťazca pripojenia ODBC. Môžete napríklad odovzdať príkaz SELECT na vrátenie údajov do údajového hárka, formulára, zostavy alebo zoznamu, spustiť ekvivalent akčných dotazov (príkazy JAZYKA DML), zavolať uložené procedúry a vykonávať správcovské úlohy (príkazy DDL( Data Definition Language).
Poznámka: Výsledky odovzdávajúceho dotazu sú určené iba na čítanie. Ak chcete priamo upravovať údaje v údajovom hárku alebo formulári, vytvorte prepojenú tabuľku s indexovaným zobrazením. Ďalšie informácie nájdete v téme Vytvorenie indexovaných zobrazení.
-
Pripojenie k serverovej databáze.
Ďalšie informácie o prepájaní na SQL Server nájdete v téme Import údajov alebo prepojenie na údaje v databáze SQL Servera a Prepojenie alebo import údajov z databázy SQL Servera Azure.
-
Vyberte položku Vytvoriť > návrh dotazu.
-
V prípade potreby zavrite dialógové okno Pridanie tabuliek (Zobraziť tabuľku v Accesse.
-
Vyberte položku Návrh >prechodom.
Access skryje mriežku návrhu dotazu a zobrazí zobrazenie SQL.
-
Ak sa hárok vlastností dotazu nezobrazí, zobrazte ho stlačením klávesu F4.
-
V hárku vlastností kliknite na pole vlastnosti ODBC Connect Str a potom vykonajte niektorý z týchto krokov:
Získanie reťazca pripojenia:
-
Na navigačnej table kliknite pravým tlačidlom myši na tabuľku prepojenú s požadovaným zdrojom údajov a vyberte položku Správca prepojenej tabuľky.
-
V dialógovom okne Správca prepojenej tabuľky začiarknite políčko zdroja údajov a potom vyberte položku Upraviť.
-
V dialógovom okne Upraviť prepojenie skopírujte text do poľa Reťazec pripojenia .
-
Vyberte položku Zostaviť .
-
Podľa pokynov vytvorte súbor DSN, ktorý obsahuje informácie o reťazci pripojenia. Podrobný postup nájdete v téme Import údajov alebo prepojenie na údaje v databáze SQL Servera a Prepojenie alebo import údajov z databázy SQL Servera Azure.
Po vytvorení pripojenia súboru DSN sa reťazec pripojenia ODBC interne uloží do databázy Accessu. Tu je trik na získanie kópie tohto reťazca:
-
Vyhľadajte názov prepojenej tabuľky na navigačnej table pomocou požadovaného pripojenia ODBC.
-
Stlačte kombináciu klávesov Ctrl + G. a otvorte okamžité okno VBA.
-
Zadajte nasledujúci kód:
?CurrentDb.TableDefs("<table name>").Connect
Namiesto názvu <tabuľky však> názov prepojenej tabuľky z kroku a.
-
Skopírujte reťazec vrátený do vlastnosti ODBC Connect Str .
-
-
Zadajte dotaz v zobrazení SQL.
Poznámka: Medzi accessovým SQL a SQL Serverom TSQL existujú dôležité rozdiely, najmä v prípade syntaxe, názvov funkcií a argumentov funkcie. Ďalšie informácie nájdete v téme Access SQL a SQL Server TSQL – porovnanie.
Tip Najprv vytvorte dotaz TSQL v nástroji SQL Server Management Studio a potom skopírujte a prilepte SQL do zobrazenia SQL. Tým sa zabezpečí správna syntax dotazu. Ak nemáte pohodlný prístup k databáze SQL Servera, zvážte inštaláciu vydania Microsoft SQL Server Express na pracovnej ploche, ktorá podporuje až 10 GB a predstavuje bezplatný a jednoduchší spôsob na spustenie a kontrolu migrácie.
-
Zvážte nastavenie ďalších súvisiacich vlastností:
-
Vráti záznamy Niektoré príkazy SQL vracajú záznamy, napríklad SELECT, a niektoré nie, napríklad UPDATE. Ak dotaz vráti záznamy, nastavte túto vlastnosť na hodnotu Áno. ak dotaz nevráti záznamy, nastavte túto vlastnosť na hodnotu Nie.
Poznámka: Odovzdávajúce dotazy môžu vrátiť viacero množín výsledkov, ale v údajovom hárku, formulári, zostave alebo premennej skupiny záznamov sa použije iba prvá množina výsledkov. Ak chcete načítať viacero množín výsledkov, použite dotaz Make Table , ako je znázornené v nasledujúcom príklade:
SELECT <pass-through query name>.* INTO <local table name> FROM < pass-through query name >
Musíte použiť hviezdičku (*), pretože každá množina výsledkov môže mať rôzne stĺpce. Každá množina výsledkov sa uloží do samostatnej tabuľky a čísla sa príslušne pripoja k názvom lokálnych tabuliek. Ak sa napríklad vrátia tri množiny výsledkov, názvy tabuliek by boli: <názov lokálnej tabuľky>, <názov lokálnej tabuľky>1 <názov lokálnej tabuľky>2.
-
Zapisovať správy do denníka Zadajte, či sa majú vrátiť správy z databázy SQL v tabuľke správ Accessu. Názov tabuľky má formát, meno používateľa – nn, kde meno používateľa je prihlasovacie meno aktuálneho používateľa a nn je číslo začínajúce na 00.
-
Časový limit ODBC Zadajte počet sekúnd čakania, kým sa pri spustení dotazu vyskytne chyba časového uplašenia. Predvolená hodnota je 60 sekúnd. Môže dôjsť k oneskoreniam v dôsledku sieťového prenosu alebo intenzívneho používania databázového servera.
-
Maximálny počet záznamov Zadajte maximálny počet záznamov, ktoré sa majú vrátiť. Možno máte obmedzené systémové prostriedky alebo chcete výsledky otestovať len s malým množstvom údajov.
-
-
Po dokončení zadávania dotazu vyberte položku Návrh > spustiť. Dotaz sa odošle na databázový server na spracovanie.