Gäller för
Access för Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Microsoft Access-databasmotorn SQL är vanligtvis ANSI -89 Nivå 1-kompatibel. Vissa ANSI SQL-funktioner implementeras dock inte i Microsoft Access SQL. Dessutom innehåller Microsoft Access SQL reserverade ord och funktioner som inte stöds i ANSI SQL.

Stora skillnader

  • Microsoft Access SQL och ANSI SQL har var och en olika reserverade ord och datatyper. Med Microsoft OLE DB-providern finns det ytterligare reserverade ord.

  • Olika regler gäller för mellan ... Och skapa, som har följande syntax:

    uttr1 [ICKE] Mellan värde1 Och värde2

    I Microsoft Access SQL kan värde1 vara större än värde2. i ANSI SQL måste värdet1 vara lika med eller mindre än värde2.

  • Microsoft Access SQL stöder både ANSI SQL-jokertecken och Microsoft Access-specifika jokertecken som ska användas med operatorn Like . Användningen av jokertecken i ANSI och Microsoft Access är ömsesidigt uteslutande. Du måste använda den ena eller den andra uppsättningen och kan inte blanda dem. ANSI SQL-jokertecken är bara tillgängliga när du använder Microsoft Access-databasmotorn och Microsoft Access OLE DB-providern. Om du försöker använda ANSI SQL-jokertecken via Access eller DAO tolkas de som literaler.

    Matchande tecken

    Microsoft Access SQL

    ANSI SQL

    Ett enstaka tecken

    ?

    _ (understreck)

    Noll eller fler tecken

    *

    %

  • Microsoft Access SQL är i allmänhet mindre restriktivt. Den tillåter till exempel gruppering och ordning på uttryck.

  • Microsoft Access SQL har stöd för kraftfullare uttryck.

Förbättrade funktioner i Microsoft Access SQL

Microsoft Access SQL innehåller följande förbättrade funktioner:

TRANSFORM-instruktionen, som ger stöd för korsfrågor.

  • Ytterligare SQL-mängdfunktioner, till exempel Stdav och VariansP.

Deklarationen PARAMETERS för att definiera parameterfrågor.

ANSI SQL-funktioner stöds inte i Microsoft Access SQL

Microsoft Access SQL stöder inte följande ANSI SQL-funktioner:

  • DISTINCT-mängdfunktionsreferenser. Microsoft Access SQL tillåter till exempel inte SUMMA( DISTINCT-kolumnnamn).

  • Satsen LIMIT TO nn ROWS används för att begränsa antalet rader som returneras av en fråga. Du kan bara använda WHERE-sats för att begränsa omfattningen av en fråga.

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.