SQL för Microsoft Access-databasmotorn följer vanligtvis ANSI-89 Level 1.2010. Vissa ANSI SQL-funktioner implementeras emellertid inte i Microsoft Access SQL. Microsoft Access SQL innehåller även reserverade ord och funktioner som inte stöds i ANSI SQL.

Viktiga skillnader

  • Microsoft Access SQL och ANSI SQL har olika reserverade ord och datatyper. Det finns ytterligare reserverade ord med Microsoft OLE DB-providern.

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

    uttr1 [INTE] 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ärde1 vara lika med eller mindre än värde2.

  • Microsoft Access SQL stöder både jokertecken i ANSI SQL och Microsoft Access-specifika jokertecken som kan användas med operatorn Som. Användningen av jokertecken i ANSI och Microsoft Access är ömsesidigt uteslutande. Du måste använda en uppsättning eller en annan och kan inte blanda dem. JOKERTECKEN i ANSI SQL är endast tillgängliga när du använder Microsoft Access-databasmotorn och Microsoft Access OLE DB Provider. Om du försöker använda jokertecken i ANSI SQL 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. Till exempel tillåts gruppering och ordning på uttryck.

  • Microsoft Access SQL stöder kraftfullare uttryck.

Förbättrade funktioner i Microsoft Access SQL

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

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

  • Ytterligare SQL-mängdfunktioner, till exempel Stdvs ochVariansP.

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:

  • Distinkta mängdfunktionsreferenser. Till exempel går det inte att använda SUMMA(DISTINCT kolumnnamn)i Microsoft Access SQL.

  • 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?

Utöka dina kunskaper
Utforska utbildning
Få nya funktioner först
Anslut till Microsoft Insiders

Hade du nytta av den här informationen?

Hur nöjd är du med översättningskvaliteten?
Vad påverkade din upplevelse?

Tack för din feedback!

×