Az Access használható előtér-alkalmazásként, majd csatolhat táblákat egy háttérkiszolgálón, például az SQL Server-en. Alapértelmezés szerint a legtöbb lekérdezés helyileg fut az Access ACE adatbázismotorban. Bizonyos esetekben az Access távolról is futtathat lekérdezéseket az SQL Server-ről, az SQL szintaxisától és más tényezőktől függően. További információt az újrafelfedezett JET és ODBC tanulmányok "JET adatbázismotor 3.0-s verzió: ODBC-kapcsolat" című szakaszában talál.
Gyakran azonban célszerű explicit módon lekérdezést futtatni egy adatbázis-kiszolgálón. Ez a teljesítmény javítása érdekében történik: az adatbázis-kiszolgálók nagyobb feldolgozási teljesítménnyel rendelkeznek, mint az asztali számítógépek, és az adatok kisebb részét lehet visszaküldeni a hálózati kapcsolaton keresztül. Ha adatbázis-kiszolgálón szeretne lekérdezést futtatni, használjon átadó lekérdezést, amely egy olyan Transact SQL- (TSQL-) utasítás, amely egy ODBC-kapcsolati karakterlánc használatával csatlakozik az SQL Server-hez. Például a SELECT utasítások átadásával adatokat adhat vissza egy adatlapba, űrlapra, jelentésbe vagy listavezérlőbe, végrehajthatja a módosító lekérdezéseknek megfelelő lekérdezéseket (DML-utasításokat), tárolt eljárásokat hívhat meg és felügyeleti feladatokat hajthat végre (DDL-utasítások).
Megjegyzés Az átadó lekérdezések eredményei írásvédettek. Egy adatlap vagy űrlap adatainak közvetlen szerkesztéséhez hozzon létre egy indexelt nézethez csatolt táblát. További információt az Indexelt nézetek létrehozása című témakörben talál.
- Csatlakozás kiszolgálói adatbázishoz.
További információ az SQL Server csatolásáról: Adatok importálása vagy csatolása SQL Server adatbázisban és Adatok csatolása vagy importálása Azure SQL Server-adatbázisból. - Válassza a Lekérdezéstervező létrehozása> lehetőséget.
- Ha szükséges, zárja be a Táblák felvétele párbeszédpanelt (Tábla megjelenítése az Accessben.
- Válassza a Tervezési>továbbítás lehetőséget.
Az Access elrejti a lekérdezéstervező rácsot, és megjeleníti az SQL nézetet. - Ha a lekérdezés tulajdonságlapja nem jelenik meg, jelenítse meg az F4 billentyű lenyomásával.
- A tulajdonságlapon kattintson az ODBC Connect Str tulajdonságmezőre, majd tegye a következők egyikét:
A kapcsolati karakterlánc lekérése:
- A navigációs ablakban kattintson a jobb gombbal a kívánt adatforráshoz csatolt táblára, és válassza a Csatolttábla-kezelő parancsot.
- A Csatolttábla-kezelő párbeszédpanelen jelölje be az adatforrás jelölőnégyzetét, majd válassza a Szerkesztés lehetőséget.
- A Hivatkozás szerkesztése párbeszédpanelen másolja a vágólapra a Kapcsolati karakterlánc mezőben lévő szöveget.
Írja be a lekérdezést SQL nézetben.
Megjegyzés: Fontos különbségek vannak az Access SQL és az SQL Server TSQL között, különösen a szintaxis, a függvénynevek és a függvényargumentumok tekintetében. További információt az Access SQL és az SQL Server TSQL összehasonlítása című témakörben talál.
Tipp Először hozza létre a TSQL-lekérdezést az SQL Server Management Studio használatával, majd másolja át és illessze be az SQL-kódot SQL nézetbe. Ezzel biztosíthatja, hogy a lekérdezés szintaxisa helyes legyen. Ha nincs kényelmesen hozzáférhető hozzáférése egy SQL Server-adatbázishoz, fontolja meg a Microsoft SQL Server Express kiadás telepítését az asztalra, amely akár 10 GB méretet is támogat, és ingyenes és egyszerűbb módja az áttelepítés elvégzésének és ellenőrzésének.Fontolja meg további kapcsolódó tulajdonságok beállítását:
Rekordokat ad vissza Egyes SQL-utasítások rekordokat adnak vissza (például a SELECT), míg mások nem, például az UPDATE. Ha a lekérdezés rekordokat ad vissza, állítsa ezt a tulajdonságot Igen értékre; ha a lekérdezés nem ad vissza rekordokat, a tulajdonságot állítsa Nem értékre.
Megjegyzés Az átadó lekérdezések több eredményhalmazt is visszaadhatnak, de az adatlapok, az űrlapok, a jelentések vagy a rekordhalmazok változóiban csak az első eredményhalmazt használja a program. Ha több eredményhalmazt szeretne beolvasni, használja a táblakészítő lekérdezést , az alábbi példa szerint:SELECT <pass-through query name>.* INTO <local table name> FROM < pass-through query name >A csillagot (*) kell használni, mert az egyes eredményhalmazok különböző oszlopokat tartalmazhatnak. A program minden eredményhalmazt külön táblába ment, és ennek megfelelően számokat fűz a helyi táblanevekhez. Ha például három eredményhalmazt ad vissza, a táblázatnevek a következők lesznek: <helyi tábla neve>, <helyi tábla neve>1, <helyi tábla neve>2.
Üzenetek naplózása Adja meg, hogy az üzenetek az Access-adatbázis egy üzenettáblájában legyenek-e visszaküldve. A táblázat neve a következő formátumú: felhasználónév – nn, ahol a felhasználónév az aktuális felhasználó bejelentkezési neve, nn pedig 00-val kezdődő szám.
ODBC-időtúllépés Megadhatja, hogy a lekérdezés futtatásakor hány másodpercig várjon időtúllépési hiba. Az alapértelmezett érték 60 másodperc. A hálózati forgalom vagy az adatbázis-kiszolgáló intenzív használata miatt késések adódhatnak.
Rekordok maximális száma Adja meg a visszaadandó rekordok maximális számát. Előfordulhat, hogy korlátozott rendszererőforrásokkal rendelkezik, vagy az eredményeket kevés adatmennyiséggel szeretné tesztelni.
Amikor befejezte a lekérdezés megadását, válassza a Tervező>futtatása gombot. A rendszer elküldi a lekérdezést feldolgozásra az adatbázis-kiszolgálónak.
