سؤال

أقوم بترحيل كمية كبيرة من الجداول الفارغة في الغالب إلى SQL Server 2008.

الجداول هي أقسام عمودية لجدول منطقي كبير واحد.

المشكلة هي أن هذا الجدول المنطقي يحتوي على أكثر من 1024 عمود.

بالنظر إلى أن معظم الحقول خالية ، أخطط لاستخدام جدول متناثر.

بالنسبة لجميع طاولاتي حتى الآن ، كنت أستخدم Select ... في ، والتي كانت تعمل بشكل جيد.

ومع ذلك ، فقد فشل الآن "إنشاء جدول لأن العمود" XYZ "في الجدول" MyBigTable "يتجاوز الحد الأقصى من 1024 أعمدة."

هل هناك أي طريقة يمكنني القيام بها ... بحيث تنشئ الجدول الجديد بدعم متناثر؟

هل كانت مفيدة؟

المحلول

ما تريد القيام به هو إنشاء الجدول يدويًا وملءه بـ INSERT ... SELECT بيان.

لإنشاء الجدول ، أوصي برامج البرمجة النصية لجداول المكونات المختلفة ودمج تعريفاتها ، مما يجعلها جميعًا SPARSE عند الضرورة. ثم فقط قم بتشغيل أغنيتك CREATE TABLE بيان.

نصائح أخرى

لا يمكنك (وربما لا تريد ذلك على أي حال). نرى في جملة (TSQL) لوثائق MSDN.

المشكلة هي أن الجداول المتفرقة هي خاصية تخزين مادية وليست خاصية منطقية ، لذلك لا توجد طريقة يعرف محرك DBMS نسخها على هذه الخاصية. علاوة على ذلك ، فهي خاصية على مستوى الجدول ويمكن أن يكون لدى Select جداول مصدر متعددة. راجع قسم الملاحظات في الصفحة التي قمت بربطها حيث تناقش كيف يمكنك استخدام تفاصيل المؤسسة الافتراضية فقط.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top