ส่งข้อมูลไปยังคลังสินค้าของคุณโดยใช้คําสั่ง COPY

นําไปใช้กับ:✅ คลังสินค้าใน Microsoft Fabric

คําสั่ง COPY เป็นวิธีหลักในการนําเข้าข้อมูลลงในตาราง Warehouse คัดลอก ดําเนินการนําเข้าข้อมูลปริมาณงานสูงจากบัญชีที่จัดเก็บข้อมูล Azure ภายนอก ด้วยความยืดหยุ่นในการกําหนดค่าตัวเลือกรูปแบบไฟล์ต้นทาง ตําแหน่งสําหรับจัดเก็บแถวที่ถูกปฏิเสธ ข้ามแถวส่วนหัว และตัวเลือกอื่น ๆ

บทช่วยสอนนี้แสดงตัวอย่างการนําเข้าข้อมูลสําหรับตาราง Warehouse โดยใช้คําสั่ง T-SQL COPY ใช้ข้อมูลตัวอย่าง Bing COVID-19 จากชุดข้อมูล Azure Open สําหรับรายละเอียดเกี่ยวกับข้อมูลนี้ รวมถึง Schema และสิทธิ์การใช้งาน โปรดดู Bing COVID-19

หมายเหตุ

นอกจากนี้ Warehouse ยังช่วยให้คุณสามารถใช้คําสั่ง BULK INSERT สําหรับการนําเข้าข้อมูลได้อีกด้วย คําสั่ง COPY INTO เป็นคําสั่งที่แนะนําสําหรับรหัสการนําเข้าใหม่ ในขณะที่ BULK INSERT คําสั่งช่วยให้คุณสามารถนําโค้ดที่คุณกําลังใช้ใน SQL Server หรือฐานข้อมูล Azure SQL กลับมาใช้ใหม่ได้

หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับคําสั่ง T-SQL COPY รวมถึงตัวอย่างเพิ่มเติมและไวยากรณ์แบบเต็ม โปรดดู คัดลอก (Transact-SQL)

สร้างตาราง

ก่อนที่คุณจะใช้คําสั่งคัดลอก คุณต้องสร้างตารางปลายทางก่อน เมื่อต้องสร้างตารางปลายทางสําหรับตัวอย่างนี้ ใช้ขั้นตอนต่อไปนี้:

  1. ในพื้นที่ทํางาน Microsoft Fabric ของคุณ ค้นหาและเปิดคลังสินค้าของคุณ

  2. สลับไปยังแท็บ หน้าแรก และเลือก คิวรี SQL ใหม่

    ภาพหน้าจอของส่วนบนสุดของพื้นที่ทํางานของผู้ใช้ที่แสดงปุ่มคิวรี SQL ใหม่

  3. เมื่อต้องการสร้างตารางที่ใช้เป็นปลายทางในบทช่วยสอนนี้ ให้เรียกใช้โค้ดต่อไปนี้:

        CREATE TABLE dbo.TaxiTrips
        (
            doLocationId            varchar(MAX)      NULL,
            endLat                  float             NULL,
            endLon                  float             NULL,
            extra                   float             NULL,
            fareAmount              float             NULL,
            improvementSurcharge    varchar(MAX)      NULL,
            mtaTax                  float             NULL,
            passengerCount          int               NULL,
            paymentType             varchar(MAX)      NULL,
            puLocationId            varchar(MAX)      NULL,
            puMonth                 int               NULL,
            puYear                  int               NULL,
            rateCodeId              int               NULL,
            startLat                float             NULL,
            startLon                float             NULL,
            storeAndFwdFlag         varchar(1)        NULL,
            tipAmount               float             NULL,
            tollsAmount             float             NULL,
            totalAmount             float             NULL,
            tpepDropoffDateTime     datetime2(6)      NULL,
            tpepPickupDateTime      datetime2(6)      NULL,
            tripDistance            float             NULL,
            vendorId_str            varchar(MAX)      NULL,
            vendorId_lpep           int               NULL
        );
    

ข้อมูล Ingest Parquet โดยใช้คําสั่ง COPY

ในตัวอย่างนี้ เราโหลดข้อมูลโดยใช้แหล่งที่มาของ Parquet เนื่องจากข้อมูลนี้จะพร้อมใช้งานแบบสาธารณะและไม่จําเป็นต้องมีการรับรองความถูกต้อง คุณสามารถคัดลอกข้อมูลนี้ได้อย่างง่ายดายโดยการระบุต้นทางและปลายทาง ไม่จําเป็นต้องมีรายละเอียดการรับรองความถูกต้อง คุณจะต้องระบุอาร์กิวเมนต์ FILE_TYPE เท่านั้น

ใช้โค้ดต่อไปนี้เพื่อเรียกใช้คําสั่ง COPY กับแหล่งที่มา Parquet:

COPY INTO dbo.TaxiTrips
FROM 'https://azureopendatastorage.blob.core.windows.net/nyctlc/yellow'
WITH (
    FILE_TYPE = 'PARQUET'
)

ตรวจสอบผลลัพธ์

คําสั่ง COPY เสร็จสมบูรณ์โดยการนําเข้า 1,571,671,152 แถวลงในตารางใหม่ของคุณ คุณสามารถยืนยันการเรียกใช้การดําเนินการได้สําเร็จโดยการเรียกใช้คิวรีที่แสดงจํานวนแถวทั้งหมดในตารางของคุณ:

SELECT COUNT_BIG(*) FROM dbo.TaxiTrips;

ตัวเลือกการนําเข้าข้อมูล

วิธีอื่นๆ ในการนําเข้าข้อมูลไปยังคลังสินค้าของคุณ ได้แก่: