Logga in med Microsoft
Logga in eller skapa ett konto.
Hej,
Välj ett annat konto.
Du har flera konton
Välj det konto som du vill logga in med.

Du kan använda Access som ett klientprogram och sedan länka till tabeller på en serverserver, till exempel SQL Server. Som standard körs de flesta frågor lokalt i Access ACE-databasmotorn. I vissa fall kan Access köra en fråga på distans på SQL Server, beroende på SQL-syntaxen och andra faktorer. Mer information finns i "JET Database Engine Version 3.0: ODBC Connectivity" i rediscovered JET and ODBC white papers.

Men ofta vill du uttryckligen köra en fråga på en databasserver. Du gör detta för att förbättra prestanda: databasservrar har större processorkraft än en stationär dator och du kan returnera en mindre delmängd data över nätverksanslutningen. Om du vill köra en fråga på en databasserver använder du en direktfråga som är ett TSQL-uttryck (Transact SQL) som ansluter till SQL Server med hjälp av en ODBC-anslutningssträng. Du kan till exempel skicka ett SELECT-uttryck för att returnera data till ett datablad, formulär, en rapport eller en listkontroll, köra motsvarigheten till redigeringsfrågor (DML-uttryck), anropa lagrade procedurer och utföra administrativa uppgifter (DDL-uttryck (Data Definition Language).

Obs    Resultatet av en direktfråga är skrivskyddad. Om du vill redigera data direkt i ett datablad eller formulär skapar du en länkad tabell till en indexerad vy. Mer information finns i Skapa indexerade vyer.

  1. Ansluta till en serverdatabas.

    Mer information om hur du länkar till SQL Server finns i Importera eller länka till data i en SQL Server databas och Länka till eller importera data från en Azure SQL Server-databas.

  2. Välj Skapa > Frågedesign.

  3. Om det behövs stänger du dialogrutan Lägg till tabeller (Visa tabell i Access 2013.

  4. Välj Design >Direkt.

    Frågerutnätet döljs i Access och SQL-vyn visas.

  5. Om frågans egenskapssida inte visas trycker du på F4 för att visa den.

  6. Klicka på egenskapsrutan ODBC Connect Str på egenskapssidan och gör sedan något av följande:

    Så här skaffar du en anslutningssträng:

    1. Högerklicka på en tabell som är länkad till önskad datakälla i navigeringsfönstret och välj Länkhanteraren.

    2. Markera kryssrutan för datakällan i dialogrutan Länkhanteraren och välj sedan Redigera.

    3. Kopiera texten i rutan Anslutningssträng i dialogrutan Redigera länk.

    1. Välj Version Knappen Verktyg.

    2. Följ anvisningarna för att skapa en DSN-fil som innehåller anslutningssträng information. Detaljerade anvisningar finns i Importera eller länka till data i en SQL Server-databas och Länka till eller importera data från en Azure SQL Server-databas.

    När du har skapat en DSN-filanslutning lagras ODBC-anslutningssträng internt i Access-databasen. Här är ett trick för att få en kopia av strängen:

    1. Leta reda på ett länkat tabellnamn i navigeringsfönstret med den ODBC-anslutning du vill använda.

    2. Tryck på Ctrl+G. för att öppna direktfönstret för VBA.

    3. Ange: följande kod:

      ?CurrentDb.TableDefs("<table name>").Connect

      Men ersätt med <tabellnamn> namnet på den länkade tabellen från steg a.

    4. Kopiera strängen som returneras till egenskapen ODBC Connect Str .

  7. Ange frågan i SQL-vyn.

    Obs   Det finns viktiga skillnader mellan Access SQL och SQL Server TSQL, särskilt med syntax, funktionsnamn och funktionsargument. Mer information finns i Jämförelse av SQL i Access med T-SQL för SQL Server.

    Tips    Skapa TSQL-frågan i SQL Server Management Studio först och kopiera och klistra sedan in SQL-vyn i SQL-vyn. Det säkerställer att frågan har rätt syntax. Om du inte har tillgång till en SQL Server-databas kan du installera Microsoft SQL Server Express utgåva på skrivbordet som har stöd för upp till 10 GB och är ett kostnadsfritt och enklare sätt att gå igenom och kontrollera migreringen.

  8. Överväg att ange ytterligare relaterade egenskaper:

    • Returnerar poster     Vissa SQL-uttryck returnerar poster, till exempel SELECT, och andra inte, till exempel UPDATE. Om frågan returnerar poster anger du den här egenskapen till Ja. om frågan inte returnerar poster anger du den här egenskapen till Nej.

      Obs    Direktfrågor kan returnera flera resultatuppsättningar, men i ett datablad, formulär, en rapport eller en postuppsättningsvariabel används bara den första resultatuppsättningen. Om du vill hämta flera resultatuppsättningar använder du en tabellfråga som följande exempel visar:

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

      Du måste använda asterisken (*) eftersom varje resultatuppsättning kan ha olika kolumner. Varje resultatuppsättning sparas i en separat tabell och tal läggs till i de lokala tabellnamnen. Om till exempel tre resultatuppsättningar returneras blir tabellnamnen: <lokalt tabellnamn>, <lokalt tabellnamn>1 <lokalt tabellnamn>2.

    • Loggmeddelanden    Ange om meddelanden från SQL-databasen ska returneras i en Access-meddelandetabell. Tabellnamnet har format, användarnamn – nn, där användarnamn är inloggningsnamnet för den aktuella användaren och nn är ett nummer som börjar på 00.

    • ODBC Timeout    Ange hur många sekunder som ska vänta innan ett time out-fel uppstår när en fråga körs. Standardvärdet är 60 sekunder. Det kan uppstå fördröjningar på grund av nätverkstrafik eller tung användning av databasservern.

    • Max antal poster    Ange det maximala antalet poster som ska returneras. Du kanske har begränsade systemresurser eller så vill du testa resultaten med bara en liten mängd data.

  9. När du har angett frågan väljer du Design > Kör. Frågan skickas till databasservern för bearbetning.

Se även

Referens för transact-SQL

Fråga med Transact-SQL

Behöver du mer hjälp?

Vill du ha fler alternativ?

Utforska prenumerationsförmåner, bläddra bland utbildningskurser, lär dig hur du skyddar din enhet med mera.

Communities hjälper dig att ställa och svara på frågor, ge feedback och få råd från experter med rika kunskaper.

Hade du nytta av den här informationen?

Hur nöjd är du med språkkvaliteten?
Vad påverkade din upplevelse?
Genom att trycka på skicka, kommer din feedback att användas för att förbättra Microsofts produkter och tjänster. IT-administratören kan samla in denna data. Sekretesspolicy.

Tack för din feedback!

×