Rumah > pangkalan data > tutorial mysql > Mengapa Pakej SSIS Saya Gagal Apabila Mendapatkan Metadata daripada Jadual Sementara?

Mengapa Pakej SSIS Saya Gagal Apabila Mendapatkan Metadata daripada Jadual Sementara?

Mary-Kate Olsen
Lepaskan: 2024-12-29 05:13:10
asal
692 orang telah melayarinya

Why Does My SSIS Package Fail When Retrieving Metadata from Temporary Tables?

Kegagalan Pengambilan Metadata dalam Pakej SSIS Kerana Jadual Sementara

Dalam SSIS, mendapatkan semula metadata daripada jadual sementara kadangkala boleh menyebabkan pakej gagal dengan ralat: "Ralat tidak ditentukan. Rekod OLE DB tersedia. Metadata tidak dapat ditentukan kerana pernyataan 'pilih * daripada '##TmpMcsConfigurationDeviceHistory86B34BFD041A430E84CCACE78DA336A1'' menggunakan jadual temp."

Isu ini timbul apabila pakej cuba mengakses jadual sementara global bernama "##TmpMcsConfigurationDeviceHistory." Ralat menunjukkan bahawa SSIS tidak dapat menentukan metadata jadual temp secara dinamik.

Penyelesaian

Untuk menyelesaikan isu ini, anda boleh mentakrifkan secara eksplisit metadata untuk temp jadual menggunakan klausa WITH RESULT SETS. Ini memberikan SSIS maklumat yang diperlukan terlebih dahulu, menghapuskan keperluan untuknya menentukan metadata secara dinamik, yang boleh menyebabkan kegagalan untuk jadual temp.

Contoh Pertanyaan dengan SET HASIL:

EXEC ('
    CREATE TABLE #a 
      (
        MyIntegerColumn INT NOT NULL,
        MyTextColumn VARCHAR(50) NULL,
        MyOtherColumn BIT NULL
      ) 
    INSERT INTO #a 
      (
        MyIntegerColumn,
        MyTextColumn,
        MyOtherColumn
      )
    SELECT 
        1 AS MyIntegerColumn,
        ''x'' AS MyTextColumn,
        0 AS MyOtherColumn

    SELECT MyIntegerColumn, MyTextColumn, MyOtherColumn
    FROM #a')

WITH RESULT SETS
    (
        (
            MyIntegerColumn INT NOT NULL
           ,MyTextColumn VARCHAR(50) NULL
           ,MyOtherColumn BIT NULL
        )
    )
Salin selepas log masuk

Dengan menyediakan metadata secara eksplisit, SSIS boleh mengelak daripada mendapatkannya secara dinamik daripada jadual temp, menghapuskan ralat dan membolehkan pakej mengambil metadata dengan jayanya.

Atas ialah kandungan terperinci Mengapa Pakej SSIS Saya Gagal Apabila Mendapatkan Metadata daripada Jadual Sementara?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan