SQL של מנגנון מסד הנתונים של Microsoft Access תואם בדרך כלל לרמה 1 של ANSI -89. עם זאת, תכונות ANSI SQL מסוימות אינן מיושמות ב- Microsoft Access SQL. כמו כן, Microsoft Access SQL כולל מילים ותכונות שמורות אינן נתמכות ב- ANSI SQL.
הבדלים עיקריים
-
כל אחד מ- Microsoft Access SQL ו- ANSI SQL כולל מילים שמורות וסוגי נתונים שונים. באמצעות ספק Microsoft OLE DB, קיימות מילים שמורות נוספות.
-
כללים שונים חלים על שבין... ו - construct, הכולל את התחביר הבא:
expr1 [NOT] Between value1 And value2
ב- Microsoft Access SQL, value1 יכול להיות גדול מ- value2; ב- ANSI SQL, value1 חייב להיות שווה ל- value2 או קטן מ- value2.
-
Microsoft Access SQL תומך הן בתווים כלליים של ANSI SQL והן בתווים ספציפיים ל- Microsoft Access תווים כלליים לשימוש עם האופרטור Like . השימוש בתווים הכלליים ANSI ו- Microsoft Access אינו יכול להתקיים בו-זמנית. עליך להשתמש בערכה אחת או בערכה אחרת ולא ניתן לערבב אותן. התווים הכלליים ANSI SQL זמינים רק בעת שימוש במנגנון מסד הנתונים של Microsoft Access ובספק OLE DB של Microsoft Access. אם תנסה להשתמש בתווים הכלליים ANSI SQL באמצעות Access או DAO, הם מפורשים כלטרליים.
תו תואם
Microsoft Access SQL
ANSI SQL
כל תו יחיד
?
_ (מקף תחתון)
אפס תווים או יותר
*
%
-
Microsoft Access SQL בדרך כלל פחות מגביל. לדוגמה, היא מתיר קיבוץ ומיון בביטויים.
-
Microsoft Access SQL תומך בביטויים חזקים יותר.
תכונות משופרות של Microsoft Access SQL
Microsoft Access SQL מספק את התכונות המשופרות הבאות:
משפט TRANSFORM, המספק תמיכה בשאילתות הצלבות.
-
פונקציות צבירה נוספות של SQL, כגון StDev ו- VarP.
ההצהרה PARAMETERS עבור הגדרת שאילתות פרמטר.
תכונות ANSI SQL אינן נתמכות ב- Microsoft Access SQL
Microsoft Access SQL אינו תומך בתכונות ANSI SQL הבאות:
-
הפניות לפונקציות צבירה DISTINCT. לדוגמה, Microsoft Access SQL אינו מאפשר SUM(DISTINCT columnname).
-
משפט LIMIT TO nn ROWS המשמש להגבלת מספר השורות המוחזרות על-ידי שאילתה. באפשרותך להשתמש רק משפט WHERE כדי להגביל את טווח השאילתה.