Läpivientikyselyn luominen

Käytetään kohteeseen
Access for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Voit käyttää Accessia edustasovelluksena ja muodostaa sitten linkin taustapalvelimen, kuten SQL Server:n, taulukoihin. Useimmat kyselyt suoritetaan oletusarvoisesti paikallisesti Access ACE -tietokantamoduulissa. Joissakin tapauksissa Access voi suorittaa kyselyn etäyhteyden kautta SQL Server:ssä SQL-syntaksista ja muista tekijöistä riippuen. Lisätietoja on artikkelissa "JET tietokantamoduuli Version 3.0: ODBC Connectivity" Rediscovered JET and ODBC -julkaisuissa.

Usein kysely halutaan kuitenkin suorittaa tietokantapalvelimessa. Tämä parantaa suorituskykyä: tietokantapalvelimissa on pöytätietokoneita suurempi käsittelyteho ja voit palauttaa pienemmän tietojoukon verkkoyhteyden kautta. Jos haluat suorittaa kyselyn tietokantapalvelimessa, käytä läpivientikyselyä eli Transact SQL (TSQL) -lauseketta, joka muodostaa yhteyden SQL Server:ään ODBC-yhteysmerkkijonon avulla. Voit esimerkiksi välittää SELECT-lauseen, jolla voit palauttaa tietoja taulukkoon, lomakkeeseen, raporttiin tai luettelon ohjausobjektiin, suorittaa muutoskyselyjä vastaavia kyselyjä (Data Manipulation Language (DML) -lauseita), kutsua tallennettuja toimintosarjoja ja suorittaa hallintatehtäviä (DDL (Data Definition Language) -lauseita).

Huomautus Läpivientikyselyn tulokset ovat vain luku -tilassa. Jos haluat muokata taulukkonäkymän tai lomakkeen tietoja suoraan, luo linkitetty taulukko indeksoituun näkymään. Lisätietoja on kohdassa Indeksoitujen näkymien luominen.

  1. Muodosta yhteys palvelintietokantaan.
    Lisätietoja linkittämisestä SQL Server on artikkeleissa Tuominen tai linkittäminen SQL Server tietokannan tietoihin ja Linkittäminen Azure SQL Server tietokannan tietoihin tai tietojen tuominen tietokannasta.
  2. Valitse Luo>kyselyn rakenne.
  3. Sulje tarvittaessa Lisää taulukoita -valintaikkuna (Näytä taulukko Accessissa.
  4. Valitse Rakenteen>läpivienti.
    Access piilottaa kyselyn rakenneruudukon ja näyttää SQL-näkymän.
  5. Jos kyselyn ominaisuusikkuna ei tule näyttöön, tuo se näyttöön painamalla F4-näppäintä.
  6. Napsauta ominaisuusikkunassa ODBC Connect Str -ominaisuusruutua ja tee sitten jompikumpi seuraavista:

Voit hankkia yhteysmerkkijonon seuraavasti:

  1. Napsauta siirtymisruudussa hiiren kakkospainikkeella haluttuun tietolähteeseen linkitettyä taulukkoa ja valitse Linkitettyjen taulukoiden hallinta.
  2. Valitse Linkitettyjen taulukoiden hallinta -valintaikkunassa tietolähteen valintaruutu ja valitse sitten Muokkaa.
  3. Kopioi Muokkaa linkkiä -valintaikkunassa Yhteysmerkkijono-ruudussa oleva teksti.
  1. Kirjoita kysely SQL-näkymässä.
    Huomautus: Access SQL:n ja SQL Server TSQL:n välillä on merkittäviä eroja, erityisesti syntaksissa, funktioiden nimissä ja funktioiden argumenteissa. Saat lisätietoja artikkelista Access SQL -palvelimen vertaaminen SQL Server TSQL -palvelimeen.
    Vinkki Luo ensin TSQL-kysely SQL Server Management Studio:ssa, ja kopioi ja liitä SQL sitten SQL-näkymään. Näin voit varmistaa, että kyselyllä on oikea syntaksi. Jos sinulla ei ole pääsyä SQL Server -tietokantaan, harkitse Microsoft SQL Server Express -version asentamista työpöydällesi. Se tukee jopa 10 gigatavua ja on maksuton ja helpompi tapa suorittaa ja tarkistaa siirto.

  2. Harkitse muiden liittyvien ominaisuuksien määrittämistä:

    • Palauttaa tietueet Jotkin SQL-lausekkeet, kuten SELECT, palauttavat tietueita, ja toiset, kuten UPDATE, eivät palauta. Jos kysely palauttaa tietueita, määritä tämän ominaisuuden arvoksi Kyllä. Jos kysely ei palauta tietueita, aseta tämän ominaisuuden arvoksi Ei.
      Huomautus Läpivientikyselyt voivat palauttaa useita tulosjoukkoja, mutta taulukossa, lomakkeessa, raportissa tai tietuejoukon muuttujassa käytetään vain ensimmäistä tulosjoukkoa. Jos haluat noutaa useita tulosjoukkoja, käytä taulukon luovaa kyselyä seuraavassa esimerkissä osoitetulla tavalla:

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

      Käytä tähteä (*), koska kussakin tulosjoukossa voi olla eri sarakkeet. Kukin tulosjoukko tallennetaan erilliseen taulukkoon ja paikallisten taulukoiden nimiin lisätään luvut vastaavasti. Jos funktio palauttaa esimerkiksi kolme tulosjoukkoa, taulukon nimet ovat: <paikallisen taulukon nimi>, <paikallisen taulukon nimi>1, <paikallisen taulukon nimi>2.

    • Kirjaa viestit Määritä, palautetaanko viestit SQL-tietokannasta Access-viestien taulukossa. Taulukon nimi on muodossa käyttäjänimi – nn, jossa käyttäjänimi on nykyisen käyttäjän kirjautumisnimi ja nn on numerosta 00 alkava luku.

    • ODBC-aikakatkaisu Määritä, kuinka monen sekunnin kuluttua kyselyä suoritettaessa ilmenee aikakatkaisuvirhe. Oletusarvo on 60 sekuntia. Verkkoliikenne tai tietokantapalvelimen runsas käyttö voi aiheuttaa viiveitä.

    • Tietueiden enimmäismäärä Määritä palautettavien tietueiden enimmäismäärä. Järjestelmäresurssit voivat olla rajalliset, tai haluat testata tuloksia pienellä datamäärällä.

  3. Kun olet kirjoittanut kyselyn, valitse Suorita rakenne.> Kysely lähetetään tietokantapalvelimeen käsiteltäväksi.

Katso myös

Transact-SQL-viite

Kyselyt Transact-SQL:llä