เชื่อมต่อกับ SQL Server จาก Power Apps

คุณสามารถเชื่อมต่อกับ SQL Server ใน Azure หรือฐานข้อมูลในสถานที่

หมายเหตุ

แหล่งข้อมูล SQL ที่สร้างขึ้นใหม่จะไม่มีคำนำหน้าด้วย [dbo] เหมือนที่เคยเป็นใน Power Apps เวอร์ชันก่อนหน้า

สำหรับข้อมูลเพิ่มเติม โปรดดู ปัญหาทั่วไปและวิธีแก้ไขสำหรับ Power Apps

สร้างแอปโดยอัตโนมัติ

ขึ้นอยู่กับอินเทอร์เฟซ Power Apps ที่คุณใช้อยู่ โปรดอ้างอิง รูปลักษณ์ใหม่ หรือ รูปลักษณ์คลาสสิก เพื่อสร้างแอป

  1. ลงชื่อเข้าใช้ Power Apps

  2. จาก หน้าแรก ให้เลือกตัวเลือก แกลเลอรีหน้าเดียว หรือ มือถือสามหน้าจอ:

    • หากต้องการสร้างแอปแกลเลอรีแบบหน้าเดียวที่มีเค้าโครงที่ปรับเปลี่ยนตามอุปกรณ์ ให้เลือกอย่างใดอย่างหนึ่ง:
      • เริ่มด้วยข้อมูล > เลือกข้อมูลจากภายนอก > จาก SQL
      • เริ่มด้วยการออกแบบหน้า > แกลเลอรีที่เชื่อมต่อกับข้อมูลจากภายนอก > จาก SQL
    • หากต้องการสร้างแอปบนอุปกรณ์เคลื่อนที่แบบสามหน้าจอ ให้เลือก เริ่มต้นด้วยเทมเพลตแอป > จาก SQL
  3. เลือกการเชื่อมต่อ SQL ของคุณแล้วเลือกตาราง หากต้องการเลือกการเชื่อมต่ออื่น ให้เลือกเมนูโอเวอร์โฟลว์ ... เพื่อสลับการเชื่อมต่อหรือสร้างการเชื่อมต่อ SQL ใหม่

    หมายเหตุ

    แสดงเพียงการเชื่อมต่อเดียวในแต่ละครั้ง

  4. เมื่อคุณดำเนินการเสร็จสิ้นแล้วเลือก สร้างแอป

เรียก Stored Procedure โดยตรงใน Power Fx (พรีวิว)

คุณสามารถเรียก SQL Server Stored Procedure ได้โดยตรงจาก Power Fx โดยการเปิดสวิตช์ SQL Server Stored Procedure พรีวิว

  1. ไปที่ การตั้งค่า > คุณลักษณะที่กำลังจะเกิดขึ้น > พรีวิว
  2. ค้นหา Stored Procedure
  3. เปิดสวิตช์พรีวิวตามที่แสดง

ภาพหน้าจอที่แสดงการสลับ SQL Server Stored Procedure ตั้งค่าเป็นเปิด

เมื่อคุณเพิ่มการเชื่อมต่อ SQL Server ให้กับแอปของคุณ คุณสามารถเพิ่มตารางและมุมมองหรือ Stored Procedure ได้แล้ว

ภาพหน้าจอที่แสดงรายการตาราง มุมมอง และ Stored Procedure ที่สามารถเพิ่มลงในแอปของคุณ

หากคุณไม่เห็น Stored Procedure ของคุณในทันที การค้นหาจะเร็วกว่า

เมื่อคุณเลือก Stored Procedure โหนดย่อยจะปรากฏขึ้น และคุณสามารถกำหนด Stored Procedure ว่า ปลอดภัยในการใช้กับแกลเลอรีและตาราง หากคุณเลือกตัวเลือกนี้ คุณสามารถกำหนด Stored Procedure ของคุณเป็นคุณสมบัติ Items ของแกลเลอรีสำหรับตารางที่จะใช้ในแอปของคุณ

เปิดใช้งานตัวเลือกนี้เฉพาะในกรณีที่:

  1. ไม่มีผลข้างเคียงในการเรียกขั้นตอนนี้ตามความต้องการ หลายครั้ง ทุกครั้งที่ Power Apps รีเฟรชตัวควบคุม เมื่อใช้กับคุณสมบัติ Items ของแกลเลอรีหรือตาราง Power Apps จะเรียก Stored Procedure ทุกครั้งที่ระบบพิจารณาว่าจำเป็นต้องรีเฟรช คุณไม่สามารถควบคุมได้ว่าจะเรียก Stored Procedure เมื่อใด
  2. Stored Procedure ส่งคืนเรกคอร์ดน้อยกว่าขีดจำกัดการรับมอบสิทธิ์ได้ (500/2000) เมื่อตารางหรือมุมมองถูกกำหนดให้กับคุณสมบัติ Items Power Apps จะสามารถควบคุมการแบ่งหน้าและนำเข้า 100 เรกคอร์ดในแต่ละครั้ง เมื่อจำเป็น Stored Procedure แตกต่างกันและอาจแบ่งหน้าได้ผ่านอาร์กิวเมนต์ไปยัง Stored Procedure แต่ Power Apps ไม่สามารถดึงหน้าเข้ามาโดยอัตโนมัติเช่นเดียวกับตารางและมุมมอง ผู้สร้างต้องกำหนดค่าความสามารถในการแบ่งหน้า

ตัวอย่างเช่น

เมื่อคุณเพิ่ม Stored Procedure คุณอาจเห็นแหล่งข้อมูลมากกว่าหนึ่งรายการในโครงการของคุณ

ภาพหน้าจอที่แสดงแหล่งข้อมูล SQL

นำหน้าชื่อ Stored Procedure ด้วยชื่อของตัวเชื่อมต่อที่เกี่ยวข้อง ตัวอย่างเช่น DataCardValue3_1.Text มาจากตัวเชื่อมต่อ DataCard

ติดป้ายกำกับค่าต่างๆ เช่น การใช้ตัวเลข ตามความจำเป็นเนื่องจากคุณอ่านจากค่าข้อความใน Power Apps

การเรียก Stored Procedure โดยตรง

เคล็ดลับ

หากต้องการใช้ Stored Procedure ในคุณสมบัติ Item สำหรับแกลเลอรีหรือตาราง ให้ใช้ชื่อ Stored Procedure ที่คุณจะใช้ชื่อตาราง

ปัญหาที่ทราบกันดี

แหล่งข้อมูล SQL ไม่เพิ่มคำนำหน้า [dbo] ในชื่อแหล่งข้อมูลอีกต่อไป

คำนำหน้า [dbo] ไม่ได้ใช้เพื่อวัตถุประสงค์เชิงปฏิบัติใดๆ ใน Power Apps เนื่องจากชื่อแหล่งข้อมูลจะถูกแยกความกำกวมโดยอัตโนมัติ แหล่งข้อมูลที่มีอยู่ไม่ได้รับผลกระทบจากการเปลี่ยนแปลงนี้ แต่แหล่งข้อมูล SQL ที่เพิ่มเข้ามาใหม่ไม่มีคำนำหน้า

หากคุณต้องการอัปเดตสูตรจำนวนมากในแอปใดแอปหนึ่งของคุณ Power Apps Source File Pack และ Unpack Utility สามารถใช้เพื่อทำการค้นหาและแทนที่ส่วนกลาง

หมายเหตุ

โดยเริ่มต้นในเวอร์ชัน 3.21054 เราจะอัปเดตการอ้างอิงชื่อเดิมที่ใช้งานไม่ได้ไปยังชื่อแหล่งข้อมูลใหม่โดยอัตโนมัติ หลังจากการอ่านแหล่งข้อมูล

ขั้นตอนถัดไป

หมายเหตุ

บอกให้เราทราบเกี่ยวกับภาษาที่คุณต้องการในคู่มือ ทำแบบสำรวจสั้นๆ (โปรดทราบว่าแบบสำรวจนี้เป็นภาษาอังกฤษ)

แบบสำรวจนี้ใช้เวลาทำประมาณเจ็ดนาที ไม่มีการเก็บข้อมูลส่วนบุคคล (คำชี้แจงสิทธิ์ส่วนบุคคล)