Átadó lekérdezés létrehozása

Hatókör
Microsoft 365-höz készült Access Access 2024 Access 2021 Access 2019 Access 2016

Használhatja az Accesst előtér-alkalmazásként, majd hivatkozhat egy háttérkiszolgáló tábláira, például SQL Server. Alapértelmezés szerint a legtöbb lekérdezés helyileg fut az Access ACE adatbázismotorban. Bizonyos esetekben az Access az SQL szintaxisától és más tényezőktől függően távolról is futtathat lekérdezéseket SQL Server. További információ: "JET database engine Version 3.0: ODBC Connectivity" (A JET adatbázismotor 3.0-s verziója: ODBC-kapcsolat) az újra felfedezett JET- és ODBC-tanulmányokban.

Gyakran azonban explicit módon szeretne lekérdezést futtatni egy adatbázis-kiszolgálón. Ezt a teljesítmény javítása érdekében teheti meg: az adatbázis-kiszolgálók feldolgozási teljesítménye nagyobb, mint az asztali számítógépek esetében, és az adatok kisebb részhalmazát is visszaadhatja a hálózati kapcsolaton keresztül. Ha adatbázis-kiszolgálón szeretne lekérdezést futtatni, használjon átmenő lekérdezést, amely egy Transact SQL-utasítás (TSQL), amely ODBC-kapcsolati karakterlánc használatával csatlakozik SQL Server. Átadhat például egy SELECT utasítást, amely adatokat ad vissza egy adatlapnak, űrlapnak, jelentésnek vagy listavezérlőnek, futtathatja a műveleti lekérdezések megfelelőit (Adatmanipulációs nyelv (DML) utasítások), meghívhat tárolt eljárásokat, és felügyeleti feladatokat (Adatdefiníciós nyelv (DDL) utasításokat hajthat végre.

Megjegyzés Az átmenő lekérdezések eredményei csak olvashatók. Adatlap vagy űrlap adatainak közvetlen szerkesztéséhez hozzon létre egy indexelt nézethez csatolt táblát. További információ: Indexelt nézetek létrehozása.

  1. Csatlakozás kiszolgálóadatbázishoz.
    A SQL Server csatolásáról további információt az Adatok importálása vagy csatolása egy SQL Server-adatbázisban és az Adatok csatolása vagy importálása Azure SQL Server-adatbázishoz című témakörben talál.
  2. Válassza aLekérdezéstervlétrehozása> lehetőséget.
  3. Ha szükséges, zárja be a Táblák hozzáadása párbeszédpanelt (Tábla megjelenítése az Accessben).
  4. Válassza azÁtmenőtervezés> lehetőséget.
    Az Access elrejti a lekérdezéstervező rácsot, és megjeleníti az SQL-nézetet.
  5. Ha a lekérdezés tulajdonságlapja nem jelenik meg, az F4 billentyűt lenyomva jelenítse meg.
  6. A tulajdonságlapon kattintson az ODBC Connect Str tulajdonságmezőre, majd tegye a következők egyikét:

Kapcsolati karakterlánc beszerzése:

  1. A navigációs ablakban kattintson a jobb gombbal egy, a kívánt adatforráshoz csatolt táblára, és válassza a Csatolttábla-kezelő lehetőséget.
  2. 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.
  3. A Hivatkozás szerkesztése párbeszédpanelen másolja a Kapcsolati sztring mezőbe a szöveget.
  1. Írja be a lekérdezést SQL-nézetben.
    Megjegyzés: Az Access SQL és a SQL Server TSQL között fontos különbségek vannak, különösen a szintaxis, a függvénynevek és a függvényargumentumok esetében. További információ: Az Access SQL és SQL Server TSQL összehasonlítása.
    Tipp Először hozza létre a TSQL-lekérdezést SQL Server Management Studio, majd másolja és illessze be az SQL-t az SQL-nézetbe. Ez biztosítja, hogy a lekérdezés szintaxisa helyes. Ha nem fér hozzá kényelmesen egy SQL Server-adatbázishoz, érdemes lehet telepítenie Microsoft SQL Server Express kiadást az asztali gépére, amely akár 10 GB-ot is támogat, és ingyenesen és egyszerűbben futtatható és ellenőrizhető a migrálás.

  2. Fontolja meg további kapcsolódó tulajdonságok beállítását:

    • Rekordokat ad vissza Egyes SQL-utasítások olyan rekordokat ad vissza, mint a SELECT, mások pedig 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, állítsa ezt a tulajdonságot Nem értékre.
      Megjegyzés Az átadó lekérdezések több eredményhalmazt is visszaadhatnak, de adatlap-, űrlap-, jelentés- vagy rekordhalmaz-változókban csak az első eredményhalmazt használja a rendszer. Ha több eredményhalmazt szeretne lekérni, használjon tábla-készítő lekérdezést az alábbi példában látható módon:

      SELECT <pass-through query name>.*
      INTO <local table name>
      FROM < pass-through query name >
      

      A csillagot (*) kell használnia, mert minden eredményhalmaz különböző oszlopokkal rendelkezhet. A rendszer minden eredményhalmazt külön táblába ment, és ennek megfelelően hozzáfűzi a számokat a helyi táblanevekhez. Ha például három eredményhalmazt ad vissza, a táblanevek a következők: <helyi tábla neve>, <helyi tábla neve>1, <helyi tábla neve>2.

    • Naplóüzenetek Adja meg, hogy szeretne-e üzeneteket visszaadni az SQL-adatbázisból egy Access-üzenettáblában. A tábla neve formátuma felhasználónév – nn, ahol a felhasználónév az aktuális felhasználó bejelentkezési neve, az nn pedig egy 00-tól kezdődő szám.

    • ODBC időtúllépés Itt adhatja meg, hogy hány másodpercig várjon, amíg időtúllépési hiba lép fel egy lekérdezés futtatásakor. Az alapértelmezett érték 60 másodperc. Előfordulhatnak késések a hálózati forgalom vagy az adatbázis-kiszolgáló nagy használata miatt.

    • Rekordok maximális mérete Adja meg a visszaadni kívánt rekordok maximális számát. Előfordulhat, hogy korlátozott rendszererőforrásokkal rendelkezik, vagy csak kis mennyiségű adattal szeretné tesztelni az eredményeket.

  3. Amikor befejezte a lekérdezés beírását, válassza a Tervezés>futtatása lehetőséget. A rendszer elküldi a lekérdezést az adatbázis-kiszolgálónak feldolgozásra.

Lásd még

Transact-SQL-referencia

Lekérdezés Transact-SQL használatával