SQL al motorului de baze de date Microsoft Access este în general compatibil cu ANSI -89 de nivel 1. Totuși, anumite caracteristici ANSI SQL nu sunt implementate în Microsoft Access SQL. De asemenea, SQL Microsoft Access include cuvinte rezervate și caracteristici care nu sunt acceptate în SQL ANSI.
Diferențe majore
-
Microsoft Access SQL și ANSI SQL au fiecare cuvinte rezervate și tipuri de date diferite. Utilizând Microsoft OLE DB Provider, există cuvinte rezervate suplimentare.
-
Reguli diferite se aplică pentru Between... Și construct, care are următoarea sintaxă:
expr1 [NOT] Between value1 And value2
În Microsoft Access SQL, valoare1 poate fi mai mare decât valoare2; în ANSI SQL, valoarea1 trebuie să fie egală cu sau mai mică decât valoarea2.
-
Microsoft Access SQL acceptă atât metacaractere ANSI SQL, cât și caractere wildcard specifice Microsoft Access pentru a fi utilizate cu operatorul Like . Utilizarea metacaracterelor ANSI și Microsoft Access se exclud reciproc. Trebuie să utilizați un set sau altul și nu le puteți amesteca. Caracterele wildcard ANSI SQL sunt disponibile numai atunci când utilizați motorul de baze de date Microsoft Access și Microsoft Access OLE DB Provider. Dacă încercați să utilizați caracterele wildcard ANSI SQL prin Access sau DAO, acestea vor fi interpretate ca literale.
Caracter potrivit
Microsoft Access SQL
ANSI SQL
Orice caracter unic
?
_ (caracter de subliniere)
Zero sau mai multe caractere
*
%
-
Microsoft Access SQL este în general mai puțin restrictiv. De exemplu, permite gruparea și ordonarea expresiilor.
-
Microsoft Access SQL acceptă expresii mai puternice.
Caracteristici îmbunătățite din Microsoft Access SQL
Microsoft Access SQL furnizează următoarele caracteristici îmbunătățite:
Instrucțiunea TRANSFORM, care oferă suport pentru interogările tabel încrucișat.
-
Funcții agregate SQL suplimentare, cum ar fi StDev și VarP.
Declarația PARAMETERS pentru definirea interogărilor cu parametri.
Caracteristici SQL ANSI neacceptat în Sql Microsoft Access
Microsoft Access SQL nu acceptă următoarele caracteristici SQL ANSI:
-
Referințe distincte ale funcției agregate. De exemplu, Microsoft Access SQL nu permite SUM( nume coloană DISTINCT).
-
Clauza LIMIT TO nn ROWS utilizată pentru a limita numărul de rânduri returnate de o interogare. Puteți utiliza doar clauza WHERE pentru a limita domeniul unei interogări.