מבט כולל על התחברות ל- SQL Server מ- Power Apps

קיימות דרכים שונות להתחבר לנתונים ב- SQL Server ביישום שלך, באמצעות נוסחאות Power Fx. באפשרותך לגשת לנתונים ישירות או להשתמש בתצוגה או פרוצדורות מאוחסנות כדי ליצור, לעדכן או למחוק נתונים באפליקציה שלך.

‏‫דרישות מוקדמות‬

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

  1. היכנס ל- Power Apps ועבור אל הדף 'יישומים '.

  2. בחר אפליקציה חדשה>התחל עם נתונים.

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

  3. מהדף 'התחל עם נתונים ', בחר חבר נתונים חיצוניים.

  4. תחת בחר ערכת נתונים כדי להתחיל, בחר מ- SQL.

    אם יש לך חיבור קיים של SQL Server, הוא נטען.

    הערה

    אם עדיין אין לך חיבור ל- SQL Server, תתבקש ליצור חיבור כזה.

  5. בחר את חיבור ה- SQL שלך.

  6. הזן את שם השרת ואת שם מסד הנתונים ולאחר מכן בחר התחבר. בחר טבלה מרשימת הטבלאות שמופיעה.

    צילום מסך שמציג את הדף 'יצירת יישום' שבו ניתן לבחור חיבור של SQL Server, כולל טבלה.

    הערה

    רק חיבור אחד מוצג בכל פעם. כדי להשתמש בחיבור אחר, בחר את תפריט ... גלישה בחיבור ה- SQL ולאחר מכן חפש חיבור חדש או צור חיבור SQL חדש.

  7. בחר צור יישום.

גישה לנתונים

לאחר שהיישום שלך מחובר ל- SQL Server, באפשרותך לגשת לנתונים: גישה לנתונים ב- SQL Server.

הצג תוצאות

כדי להציג את התוצאות של שאילתות SQL, ראה: הצגת תוצאות ב- SQL Server.

מיפויי סוגי נתונים של Power Apps

SQL Server Power Apps
bigint, decimal, int, money, numeric, smallint, , smallmoney, tinyint, , floatreal מספר
char, nchar, varchar, nvarchar, , textntext Text
bit בוליאני
date, datetime, datetime2, smalldatetime, , datetimeoffsettime תאריך ושעה
uniqueidentifier Guid

הערה

אם סוג נתונים של SQL Server אינו מופיע בטבלה הקודמת, סוג נתונים זה אינו נתמך. סוגי נתונים שאינם נתמכים כוללים את הדוגמאות הבאות: binary(), , varbinary()image, cursorrowversion, , hierarchyidסוגי sql_variant xmlגיאומטריה מרחבית, סוגי גיאוגרפיה מרחבית וטבלה. כמו כן, 'tinyint' ו- 'smallint' אינם נתמכים כמפתחות ראשיים.

פונקציות ופעולות של Power Apps הניתנות להקצאה ל- SQL Server

Power Apps יכול להקצות פעולות שאילתה של Power Fx (לדוגמה, סינון) למקור הנתונים בקצה האחורי לעיבוד. הקצאה מאפשרת לשירות הנתונים בקצה האחורי (לדוגמה, SQL Server) לבצע את עבודת הסינון כך שיש להעביר רק מספר רשומות למכשיר שלך.

טבלה זו מציגה אילו פעולות ניתנות להקצאה ל- SQL Server לפי סוג נתונים. ביטויים המצורפים Andל- , Or, Not וניתן להקצאה.

פעולה או פונקציה מספר Text בוליאני תאריך ושעה Guid
*, +, -, / ‏‏כן‬ - - כן -
<, , <=, >>= ‏‏כן‬ כן כן ‏‏כן‬ -
=, <> ‏‏כן‬ ‏‏כן‬ ‏‏כן‬ ‏‏כן‬ ‏‏כן‬
Average ‏‏כן‬ - - - -
EndsWith - כן [1] - - -
Filter ‏‏כן‬ ‏‏כן‬ ‏‏כן‬ כן [2] ‏‏כן‬
In (מחרוזת משנה) - כן [3] - - -
IsBlank [4] כן כן כן כן כן
Len (אורך) 1000000 - כן [5] - - -
Lookup ‏‏כן‬ ‏‏כן‬ ‏‏כן‬ ‏‏כן‬ ‏‏כן‬
Max ‏‏כן‬ - - כן -
Min ‏‏כן‬ - - כן -
Search כן ‏‏כן‬ כן כן -
Sort ‏‏כן‬ ‏‏כן‬ ‏‏כן‬ ‏‏כן‬ -
SortByColumns ‏‏כן‬ ‏‏כן‬ ‏‏כן‬ ‏‏כן‬ -
StartsWith - כן [6] - - -
Sum ‏‏כן‬ - - - -
UpdateIf, RemoveIf [7] ‏‏כן‬ ‏‏כן‬ ‏‏כן‬ ‏‏כן‬ ‏‏כן‬

הערות

  1. נתמך עבור (EndsWith(\<column>, "string value")) אך לא עבור (EndsWith("string value", \<column>)). אם לעמודת char(10) יש ערך של "hello", החזרת EndsWith(\<column>, "llo") False, לפי עיצוב. עמודת char(10) מכילה 10 תווים.

  2. מסנני תאריכים ישירים אינם פועלים עבור SQL Server עם שער נתונים מקומי. עם זאת, באפשרותך ליצור עמודה מחושבת שעובדת. לדוגמה, באפשרותך ליצור:
    ALTER TABLE myTable ADD DateAsInt AS (YEAR([date]) * 10000 + MONTH([date]) * 100 + DAY([date]))
    ולאחר מכן סנן לפי עמודת המספר המחושבת.

  3. נתמך עבור ("string value" in \<column>), אך לא עבור (\<column> in "string value").

  4. ביטוי כגון Filter('[dbo].[MyOrders]', !IsBlank(CustomerId)) לא ינציג לשרת. עם זאת, באפשרותך להשתמש בביטוי Filter('[dbo].[MyOrders]', CustomerId <> Blank())כגון , אשר מנציג לשרת והוא קרוב באופן סנטי. ההבדל הוא שהביטוי השני לא יתייחס למחרוזת הריקה ("") כריקה. למרות שהביטויים אינם שווי ערך, ייתכן שהביטוי האחרון יעבוד למטרות שלך. לא ניתן להשתמש בשיטה זו עבור סוג הנתונים GUID.

  5. Power Apps מנציג את הפונקציה Len , אך ייתכן שהתנהגות זו לא ת לפעול כצפוי. ב- SQL Server, עמודה char(10) עם ערך "hello" מכילה תמיד אורך של 10. עם זאת, Power Apps מתייחס למחרוזת זו כאורך של 5, מה שעלול לגרום לבלבול ובלבול. אל תשתמש ב- char/nchar SQL Server, אלא השתמש במקום varchar/nvarchar זאת.

  6. נתמך עבור (StartsWith(\<column>, "string value")), אך לא עבור (StartsWith("string value", \<column>))

  7. UpdateIf ו- RemoveIf פועלים באופן מקומי אך מדמה הקצאה למגבלה של 500/2000 רשומות. הם מביאים רשומות באופן עוקבת מעבר למגבלת הרשומות של אי-הקצאה 500/2000. רשומות שעומדות בתנאי If נאספות. בדרך כלל, עד 500/2000 רשומות נאספות בנפרד ולאחר מכן משתנות לכל ביצוע. עם זאת, רשומות נוספות עשויות להתעדכן אם מטמון הנתונים המקומיים הקיים גדול ככל שייתכן שלפונקציה תהיה גישה לרשומות נוספות להערכה.