Microsoft Accessov mehanizem zbirke podatkov SQL je običajno skladen z ANSI-89 ravni 1. Vendar pa določene funkcije ANSI SQL niso uvedene v Microsoft Access SQL. Microsoft Access SQL vključuje tudi rezervirane besede in funkcije, ki niso podprte v STREŽNIKU ANSI SQL.
Velike razlike
-
Microsoft Access SQL in ANSI SQL vsebujeta različne rezervirane besede in vrste podatkov. Pri ponudniku zbirke podatkov Microsoft OLE so na voljo dodatne rezervirane besede.
-
Za between ... veljajo različna pravila ... In gradnja, ki ima naslednjo sintakso:
expr1 [NOT] Between value1 And value2
V strežniku SQL programa Microsoft Access je vrednost1 lahko večja od vrednosti2; v ANSI SQL mora biti vrednost1 enaka ali manjša od vrednosti2.
-
Microsoft Access SQL podpira nadomestne znake ANSI SQL in microsoft Accessove nadomestne znake nadomestni znaki uporabiti z operatorjem Like . Uporaba nadomestnih znakov ANSI in Microsoft Access se medsebojno izključuje. Uporabiti morate en nabor ali drug nabor in ju ne morete mešati. Nadomestni znaki ANSI SQL so na voljo le, če uporabljate mehanizem Microsoft Accessove zbirke podatkov in ponudnika zbirke podatkov Microsoft Access OLE. Če poskušate uporabiti nadomestne znake ANSI SQL prek Access ali DAO, bodo ti tolmači kot dobesedni znaki.
Ujemanje znaka
Microsoft Access SQL
ANSI SQL
Kateri koli posamezen znak
?
_ (podčrtaj)
Nič ali več znakov
*
%
-
Microsoft Access SQL je na splošno manj omejevalen. Omogoča na primer združevanje in razvrščanje izrazov.
-
Microsoft Access SQL podpira zmogljivejše izraze.
Izboljšane funkcije strežnika MICROSOFT Access SQL
Microsoft Access SQL ponuja te izboljšane funkcije:
Izjava TRANSFORM, ki zagotavlja podporo za navzkrižne poizvedbe.
-
Dodatne združevalne funkcije SQL, kot sta StDev in VarP.
Deklaracija PARAMETERS za določanje poizvedb s parametri.
Funkcije ANSI SQL niso podprte v strežniku Microsoft Access SQL
Microsoft Access SQL ne podpira teh funkcij ANSI SQL:
-
Sklici združevalne funkcije DISTINCT. Microsoft Access SQL na primer ne dovoli funkcije SUM(DISTINCT columnname).
-
Stavek LIMIT TO nn ROWS, ki se uporablja za omejitev števila vrstic, ki jih vrne poizvedba. Obseg poizvedbe lahko omejite stavek WHERE le z obsegom poizvedbe.