SQL.REQUEST (הפונקציה SQL.REQUEST)

הערה:  אנו מעוניינים לספק לך את תוכן העזרה העדכני ביותר במהירות האפשרית, בשפה שלך. דף זה תורגם באמצעות אוטומציה והוא עשוי לכלול שגיאות דקדוק או אי-דיוקים. מטרתנו היא כי תוכן זה יהיה שימושי עבורך. האם תוכל לספר לנו אם המידע הועיל לך, בחלק התחתון של דף זה? לנוחותך, הנה המאמר באנגלית .

הערה: מאמר זה סיים את עבודתו, ונוציא אותו משימוש בקרוב. כדי למנוע בעיות של "הדף לא נמצא", אנו מסירים את כל הקישורים שאנו מודעים להם. אם יצרת קישורים לדף זה, הסר אותם. ביחד נוכל לשמור על קישוריות תקינה באינטרנט.

מאמר זה מתאר את תחביר הנוסחה של הפונקציה SQL.REQUEST והשימוש בה ב- Microsoft Excel.

חשוב: 

  • החל מ- Excel 2010, חוויית 'קבלה והמרה' (ב- Power Query) מספקת פונקציונליות משופרת לייבוא נתונים ממקורות נתונים חיצוניים ומחליפה ביעילות את הפונקציה SQL.REQUEST.

  • הפונקציה SQL.REQUEST אינה נתמכת מעבר ל- Microsoft Excel 2007.

  • ייתכן שחלק מהתוכן בנושא זה לא יהיה ישים בשפות מסוימות.

תיאור

הפונקציה SQL.REQUEST מתחברת למקור נתונים חיצוני ומפעילה שאילתה מגליון עבודה. לאחר מכן, היא מחזירה את התוצאה כמערך ללא צורך בתיכנות פקודות מאקרו. אם פונקציה זו אינה זמינה, עליך להתקין את תוכנית התוספת ODBC של Microsoft Excel ‏(XLODBC.XLA).

תחביר

SQL.REQUEST(connection_string,[output_ref],[driver_prompt],[query_text],[col_names_logical])

תחביר הפונקציה SQL.REQUEST מכיל את הארגומנטים הבאים:

  • Connection_string     נדרש. מספק מידע, כגון שם מקור נתונים, מזהה משתמש וסיסמאות, הדרוש למנהל ההתקן המשמש להתחברות למקור הנתונים; עליו להיות בתבנית של מנהל ההתקן. בטבלה הבאה מוצגות שלוש מחרוזות חיבור לדוגמה עבור שלושה מנהלי התקנים.

מנהל התקן

Connection_string

dBASE

DSN=NWind;PWD=test

SQL Server

DSN=MyServer;UID=dbayer; PWD=123;Database=Pubs

ORACLE

DNS=My Oracle Data Source;DBQ=MYSER VER;UID=JohnS;PWD=Sesame

  • עליך להגדיר את שם מקור הנתונים (DSN) הנמצא בשימוש ב- connection_string לפני שתנסה להתחבר אליו.

  • באפשרותך להזין את connection_string כמערך או כמחרוזת. אם גודלו של connection_string עולה על 250 תווים, עליך להזין אותו כמערך.

  • אם לפונקציה SQL.REQUEST אין אפשרות לקבל גישה למקור הנתונים באמצעות connection_string, היא מחזירה את ערך השגיאה ‎#N/A.

  • Output_ref     אופציונלי. הפניה לתא שבו ברצונך למקם את מחרוזת החיבור שהושלמה. אם תזין את SQL.REQUEST בגליון עבודה, הפונקציה תתעלם מ- output_ref.

    • השתמש ב- output_ref כאשר ברצונך שהפונקציה SQL.REQUEST תחזיר את מחרוזת החיבור שהושלמה (במקרה זה, עליך להזין את SQL.REQUEST בגיליון מאקרו).

    • אם תשמיט את output_ref, הפונקציה SQL.REQUEST לא תחזיר מחרוזת חיבור מלאה.

  • Driver_prompt     אופציונלי. מציין מתי תוצג תיבת הדו-שיח של מנהל ההתקן, ואילו אפשרויות יהיו זמינות. השתמש באחד מהמספרים המוצגים בטבלה הבאה. אם driver_prompt מושמט, הפונקציה SQL.REQUEST משתמשת ב- 2 כברירת מחדל.

Driver_prompt

תיאור

1

תיבת הדו-שיח של מנהל ההתקן מוצגת תמיד.

2

תיבת הדו-שיח של מנהל ההתקן מוצגת רק אם נתוני מחרוזת החיבור ומפרט מקור הנתונים אינם מספיקים להשלמת החיבור. כל האפשרויות בתיבת הדו-שיח זמינות.

3

תיבת הדו-שיח של מנהל ההתקן מוצגת רק אם נתוני מחרוזת החיבור ומפרט מקור הנתונים אינם מספיקים להשלמת החיבור. האפשרויות בתיבת הדו-שיח מופיעות במעומעם ואינן זמינות אם אין צורך בהן.

4

תיבת הדו-שיח של מנהל ההתקן אינה מוצגת. אם החיבור לא מצליח, מוחזרת שגיאה.

  • Query_text     אופציונלי. משפט SQL שברצונך לבצע במקור הנתונים.

    • אם הפונקציה SQL.REQUEST אינה מצליחה לבצע את query_text במקור הנתונים שצוין, היא מחזירה את ערך השגיאה ‎#N/A.

    • באפשרותך לעדכן שאילתה על-ידי שרשור הפניות לתוך query_text. בדוגמה הבאה, בכל פעם ש- ‎$A$3 משתנה, הפונקציה SQL.REQUEST משתמשת בערך החדש לעדכון השאילתה.

‎"SELECT Name FROM Customers WHERE Balance > "&$A$3&""‎.

Microsoft Excel מגביל מחרוזות לאורך של 255 תווים. אם query_text עולה באורכו על מספר זה, הזן את השאילתה בטווח תאים אנכי והשתמש בטווח כולו כ- query_text. הערכים שמכילים התאים משורשרים כך שהם יוצרים את משפט ה- SQL המלא.

  • Column_names_logical     אופציונלי. מציין אם שמות העמודות מוחזרים כשורה הראשונה של התוצאות. הגדר לארגומנט זה ערך TRUE אם ברצונך ששמות העמודות יוחזרו כשורה הראשונה של התוצאות. השתמש בערך FALSE אם אינך מעוניין בהחזרת שמות העמודות. אם column_names_logical מושמט, הפונקציה SQL.REQUEST אינה מחזירה את שמות העמודות.

ערך החזרה

  • אם פונקציה זו משלימה את כל פעולותיה, היא מחזירה מערך של תוצאות שאילתה או את מספר השורות המושפעות מהשאילתה.

  • אם לפונקציה SQL.REQUEST אין אפשרות לקבל גישה למקור הנתונים באמצעות connection_string, היא מחזירה את ערך השגיאה ‎#N/A.

הערות

  • ניתן להזין את SQL.REQUEST כמערך. כאשר הפונקציה SQL.REQUEST מוזנת כמערך, היא מחזירה מערך התואם לטווח זה.

  • אם טווח התאים גדול מערכת התוצאות, הפונקציה SQL.REQUEST מוסיפה תאים ריקים למערך המוחזר כדי להגדיל אותו לממדים הדרושים.

  • אם ערכת התוצאות גדולה מהטווח שהוזן כמערך, הפונקציה SQL.REQUEST מחזירה את המערך כולו.

  • סדר הארגומנטים ב- SQL.REQUEST שונה מסדר הארגומנטים בפונקציה SQLRequest ב- Visual Basic for Applications.

דוגמה

נניח שברצונך לבצע שאילתה במסד נתונים של dBASE ששמו DBASE4. בעת הזנת הנוסחה הבאה בתא, מוחזר מערך של תוצאות שאילתה, כאשר השורה הראשונה מכילה את שמות העמודות:

SQL.REQUEST("DSN=NWind;DBQ=c:\msquery;FIL=dBASE4", c15, 2, "Select Custmr_ID, Due_Date from Orders WHERE order_Amt>100", TRUE)‎

שפר את הכישורים שלך ב- Office
סייר בהדרכה
קבל תכונות חדשות לפני כולם
הצטרף למשתתפי Office Insider

האם מידע זה היה שימושי?

תודה על המשוב!

תודה על המשוב! נראה שכדאי לקשר אותך לאחד מנציגי התמיכה של Office.

×