FIX: رسالة خطأ عند استخدام دالة لجدول ذات (TVF) مع عامل تشغيل "بين تطبيق" في استعلام في SQL Server 2005: "توجد ذاكرة كافية لتشغيل هذا الاستعلام"

هام: تمت ترجمة هذا المقال باستخدام برنامج ترجمة آلية لشركة مايكروسوفت بدلاً من الاستعانة بمترجم بشري. تقدم شركة مايكروسوفت كلاً من المقالات المترجمة بواسطة المترجمين البشر والمقالات المترجمة آليًا وبالتالي ستتمكن من الوصول إلى كل المقالات الموجودة في قاعدة المعرفة الخاصة بنا وباللغة الخاصة بك. بالرغم من ذلك، فإن المقالة المترجمة آليًا لا تكون دقيقة دائمًا وقد تحتوي على أخطاء إملائية أو لغوية أو نحوية، مثل تلك الأخطاء الصادرة عن متحدث أجنبي عندما يتحدث بلغتك. لا تتحمل شركة مايكروسوفت مسئولية عدم الدقة أو الأخطاء أو الضرر الناتج عن أية أخطاء في ترجمة المحتوى أو استخدامه من قبل عملائنا. تعمل شركة مايكروسوفت باستمرار على ترقية برنامج الترجمة الآلية

924954
تمت أرشفة هذه المقالة. وتظهر "كما هي" ولن يتم تحديثها بعد الآن.
الخطأ رقم: 50000224 (الإصلاح العاجل SQL)
Microsoft بتوزيع الإصلاحات Microsoft SQL Server 2005 كملف واحد القابلة للتحميل. لأن الإصلاحات تراكمية، يتضمن كل إصدار جديد كافة الإصلاحات العاجلة وأصلح كافة تصحيحات الأمان التي تم تضمينها مع SQL Server 2005 السابقة الإصدار.
الموجز
توضح هذه المقالة التالية حول هذا الإصدار على الإصلاح العاجل:
  • المشكلات التي يتم إصلاحها من خلال حزمة الإصلاحات الجديدة
  • المتطلبات المسبقة تطبيق حزمة الإصلاحات الجديدة
  • ما إذا كان يجب إعادة تشغيل الكمبيوتر بعد تطبيق حزمة الإصلاح العاجل
  • ما إذا كان يتم استبدال حزمة الإصلاحات الجديدة بواسطة حزمة الإصلاحات الجديدة الأخرى
  • ما إذا كان يجب إجراء أية تغييرات التسجيل بعد تطبيق حزمة الإصلاح العاجل
  • الملفات المضمنة في حزمة الإصلاحات الجديدة
الأعراض
اطلع على السيناريو التالي. في Microsoft SQL Server 2005 يمكنك استخدام دالة لجدول ذات (TVF) مع عامل تشغيل "بين تطبيق" في استعلام. يمكنك استخدام TVF Transact-SQL أو وقت على تشغيل لغة عامة (CLR) TVF. في هذا السيناريو، قد تظهر رسالة الخطأ التالية:
msg 701 ، مستوى 17 حالة 123 ، سطر 2
توجد ذاكرة كافية لتشغيل هذا الاستعلام.
بشكل عام، تواجه هذه المشكلة إذا أعطى الجدول في الجانب الأيسر من الاستعلام الكثير من الصفوف.
السبب
تحدث هذه المشكلة لأنه لا يتم تحرير الذاكرة المستخدمة من أجل المعلّمات TVF لحين انتهاء تشغيل الاستعلام. عند استخدام TVF مع عامل تشغيل "بين تطبيق" TVF قد يتم استدعاء عدة مرات حتى عند تشغيل الاستعلام مرة واحدة. عندما يتم استدعاء TVF عدة مرات يتم استهلاك مساحة كبيرة من الذاكرة.
الحل

معلومات الإصلاح العاجل

يتوفر إصلاح عاجل معتمد من Microsoft. ولكن الغرض منه هو حل المشكلة الموضحة في هذه المقالة. تطبيق هذا الإصلاح العاجل فقط على الأنظمة التي تواجه هذه المشكلة بالتحديد. قد يتم إجراء اختبارات إضافية على هذا الإصلاح العاجل. ولذلك، إذا لم يكن تأثير هذه المشكلة كبيرًا، نوصي بالانتظار حتى الإصدار التالي من تحديث البرنامج الذي يحتوي على هذا الإصلاح العاجل.

في حالة تحميل الإصلاح العاجل يوجد قسم "توفر تنزيل الإصلاح عاجل" أعلى مقالة قاعدة المعارف رقم هذا. إذا لم يظهر هذا المقطع اتصل Microsoft خدمة العملاء والدعم للحصول على الإصلاح العاجل.

ملاحظة تحدث مشكلات إضافية أو في أي حالة الحاجة إلى استكشاف الأخطاء وإصلاحها قد يلزم الأمر إنشاء طلب خدمة منفصل. سيتم تطبيق تكاليف الدعم المعتادة على أسئلة الدعم الإضافية والمشكلات التي لا يعمل على حلها هذا الإصلاح العاجل بالتحديد. للحصول قائمة كاملة بأرقام هواتف Microsoft خدمة العملاء والدعم الخاصة بشركة أو لإنشاء طلب خدمة منفصل قم بزيارة موقع Microsoft التالي على الويب: ملاحظة يعرض نموذج "توفر تنزيل الإصلاح العاجل" اللغات التي يتوفر الإصلاح الجديد. إذا لم تشاهد اللغة الخاصة بك، يكون ذلك بسبب لا يتوفر إصلاح عاجل لتلك اللغة.

المتطلبات الأساسية

  • Microsoft SQL Server 2005 المزود بحزمة الخدمة Service Pack 1 (SP1)

    للحصول على معلومات حول كيفية الحصول على SQL Server 2005 المزود بحزمة الخدمة SP1 انقر فوق رقم المقالة التالي لعرضها في "قاعدة المعارف لـ Microsoft:
    913089كيفية الحصول على أحدث حزمة خدمة لـ SQL Server 2005

إعادة تشغيل المعلومات

ليس لديك إلى إعادة تشغيل الكمبيوتر بعد تطبيق الإصلاح العاجل.

معلومات التسجيل

لم تكن لديك تغيير السجل.

معلومات ملف الإصلاح العاجل

يحتوي هذا الإصلاح العاجل على الملفات المطلوبة لتصحيح المشكلات التي تسرد هذه المقالة فقط. قد لا يحتوي هذا الإصلاح العاجل على كافة الملفات التي يجب أن تكون لديك لتحديث منتج لأحدث البنية بشكلٍ كامل.

يحتوي إصدار اللغة الإنجليزية من هذا الإصلاح العاجل سمات الملف (أو أحدث منها) المسردة في الجدول التالي. يتم سرد التواريخ والأوقات الخاصة بهذه الملفات في "حسب التوقيت العالمي" (UTC). عندما تقوم بعرض معلومات الملف، يتم تحويلها إلى التوقيت المحلي. لمعرفة الفرق بين التوقيت العالمي (UTC) والتوقيت المحلي، استخدم علامة التبويب المنطقة الزمنية في عنصر التاريخ والوقت في "لوحة التحكم".
SQL Server 2005 إصدارات ٣٢ بت
اسم الملفإصدار الملفحجم الملفتاريخالوقتالنظام الأساسي
Logread.exe2005.90.2192.0398,112١٩ سبتمبر ٢٠٠٦15: 10x 86
Microsoft.analysisservices.adomdclient.dll9.0.2192.0543,520١٩ سبتمبر ٢٠٠٦15: 11x 86
Microsoft.analysisservices.deploymentengine.dll9.0.2192.0138,016١٩ سبتمبر ٢٠٠٦15: 09x 86
Microsoft.analysisservices.dll9.0.2192.01,215,264١٩ سبتمبر ٢٠٠٦15: 10x 86
Microsoft.sqlserver.mgdsqldumper.dll2005.90.2192.075,552١٩ سبتمبر ٢٠٠٦15: 08x 86
Microsoft.sqlserver.sqlenum.dll9.0.2192.0908,064١٩ سبتمبر ٢٠٠٦15: 10x 86
Msgprox.dll2005.90.2192.0197,920١٩ سبتمبر ٢٠٠٦15: 09x 86
Msmdlocal.dll9.0.2192.015,609,632١٩ سبتمبر ٢٠٠٦15: 11x 86
Msmdredir.dll9.0.2192.03,990,304١٩ سبتمبر ٢٠٠٦15: 11x 86
Replprov.dll2005.90.2192.0547,616١٩ سبتمبر ٢٠٠٦15: 11x 86
Replrec.dll2005.90.2192.0782,112١٩ سبتمبر ٢٠٠٦15: 10x 86
Sqlaccess.dll2005.90.2192.0347,936١٩ سبتمبر ٢٠٠٦15: 10x 86
Sqlagent90.exe2005.90.2192.0319,264١٩ سبتمبر ٢٠٠٦15: 10x 86
Sqlservr.exe2005.90.2192.028,962,136١٩ سبتمبر ٢٠٠٦15: 12x 86
Xpstar90.dll2005.90.2192.0292,640١٩ سبتمبر ٢٠٠٦14: 02x 86
Xpstar90.rll2005.90.2192.0152,864١٩ سبتمبر ٢٠٠٦15: 10x 86
SQL Server 2005، x 64 من الإصدار
اسم الملفإصدار الملفحجم الملفتاريخالوقتالنظام الأساسي
Logread.exe2005.90.2192.0522,528١٩ سبتمبر ٢٠٠٦14: 23x 64
Microsoft.analysisservices.adomdclient.dll9.0.2192.0543,520١٩ سبتمبر ٢٠٠٦14: 23x 86
Microsoft.analysisservices.adomdclient.dll9.0.2192.0543,520١٩ سبتمبر ٢٠٠٦15: 11x 86
Microsoft.analysisservices.deploymentengine.dll9.0.2192.0138,016١٩ سبتمبر ٢٠٠٦15: 09x 86
Microsoft.analysisservices.dll9.0.2192.01,215,264١٩ سبتمبر ٢٠٠٦15: 10x 86
Microsoft.sqlserver.mgdsqldumper.dll2005.90.2192.091,424١٩ سبتمبر ٢٠٠٦14: 21x 64
Microsoft.sqlserver.mgdsqldumper.dll2005.90.2192.075,552١٩ سبتمبر ٢٠٠٦15: 08x 86
Microsoft.sqlserver.sqlenum.dll9.0.2192.0875,296١٩ سبتمبر ٢٠٠٦14: 20x 86
Msgprox.dll2005.90.2192.0259,360١٩ سبتمبر ٢٠٠٦14: 22x 64
Msmdlocal.dll9.0.2192.015,609,632١٩ سبتمبر ٢٠٠٦15: 11x 86
Msmdredir.dll9.0.2192.03,990,304١٩ سبتمبر ٢٠٠٦15: 11x 86
Replprov.dll2005.90.2192.0745,248١٩ سبتمبر ٢٠٠٦14: 20x 64
Replrec.dll2005.90.2192.01,008,416١٩ سبتمبر ٢٠٠٦14: 21x 64
Sqlaccess.dll2005.90.2192.0355,104١٩ سبتمبر ٢٠٠٦14: 23x 86
Sqlagent90.exe2005.90.2192.0390,944١٩ سبتمبر ٢٠٠٦14: 23x 64
Sqlservr.exe2005.90.2192.039,350,048١٩ سبتمبر ٢٠٠٦14: 21x 64
Xpstar90.dll2005.90.2192.0540,960١٩ سبتمبر ٢٠٠٦14: 23x 64
Xpstar90.rll2005.90.2192.0153,376١٩ سبتمبر ٢٠٠٦14: 21x 64
SQL Server 2005 الإصدار هندسة Itanium
اسم الملفإصدار الملفحجم الملفتاريخالوقتالنظام الأساسي
Logread.exe2005.90.2192.01,095,456١٩ سبتمبر ٢٠٠٦13: 52IA-64
Microsoft.analysisservices.adomdclient.dll9.0.2192.0543,520١٩ سبتمبر ٢٠٠٦13: 51x 86
Microsoft.analysisservices.adomdclient.dll9.0.2192.0543,520١٩ سبتمبر ٢٠٠٦15: 11x 86
Microsoft.analysisservices.deploymentengine.dll9.0.2192.0138,016١٩ سبتمبر ٢٠٠٦15: 09x 86
Microsoft.analysisservices.dll9.0.2192.01,215,264١٩ سبتمبر ٢٠٠٦15: 10x 86
Microsoft.sqlserver.mgdsqldumper.dll2005.90.2192.0163,104١٩ سبتمبر ٢٠٠٦13: 50IA-64
Microsoft.sqlserver.mgdsqldumper.dll2005.90.2192.075,552١٩ سبتمبر ٢٠٠٦15: 08x 86
Microsoft.sqlserver.sqlenum.dll9.0.2192.0875,296١٩ سبتمبر ٢٠٠٦13: 52x 86
Msgprox.dll2005.90.2192.0542,496١٩ سبتمبر ٢٠٠٦13: 51IA-64
Msmdlocal.dll9.0.2192.048,585,504١٩ سبتمبر ٢٠٠٦13: 53IA-64
Msmdredir.dll9.0.2192.06,237,472١٩ سبتمبر ٢٠٠٦13: 53IA-64
Replprov.dll2005.90.2192.01,617,184١٩ سبتمبر ٢٠٠٦13: 52IA-64
Replrec.dll2005.90.2192.02,141,472١٩ سبتمبر ٢٠٠٦13: 52IA-64
Sqlaccess.dll2005.90.2192.0349,472١٩ سبتمبر ٢٠٠٦13: 51x 86
Sqlagent90.exe2005.90.2192.01,143,584١٩ سبتمبر ٢٠٠٦13: 52IA-64
Sqlservr.exe2005.90.2192.072,233,760١٩ سبتمبر ٢٠٠٦13: 53IA-64
Xpstar90.dll2005.90.2192.0951,072١٩ سبتمبر ٢٠٠٦13: 51IA-64
Xpstar90.rll2005.90.2192.0152,352١٩ سبتمبر ٢٠٠٦13: 50IA-64
تصريح
أقرت Microsoft أن هذه مشكلة في منتجات Microsoft المسردة في قسم "تنطبق على".
معلومات أخرى
عند تشغيل استعلام SQL للعمليات تلاحظ أن العناصر التالية بشكل تدريجي زيادة حتى يحدث خطأ 701:
  • موظف الذاكرة CACHESTORE_SQLCP من sys.dm_os_memory_clerks طريقة عرض إدارة نظام SQL Server
  • كائن الذاكرة MEMOBJ_XSTMT من sys.dm_os_memory_objects طريقة عرض إدارة نظام SQL Server
لمزيد من المعلومات، انقر فوق رقم المقالة التالي لعرضها في "قاعدة المعارف لـ Microsoft:
824684وصف للمصطلحات القياسية المستخدمة في وصف تحديثات برامج Microsoft

خطوات إعادة إنشاء المشكلة

  1. إعادة إنشاء المشكلة بشكل أسرع, تكوين SQL Server 2005 لاستخدام كمية بسيطة من الذاكرة. للقيام بذلك، قم بتشغيل البرنامج النصي التالي في SQL Server 2005.
    -- Enable advanced optionsUSE masterEXEC sp_configure 'show advanced options', 1goRECONFIGURE WITH OVERRIDEgo-- Set the maximum amount of memory to 300 MBexec sp_configure 'max server memory', 300goreconfigure with overridegodbcc freeproccachego
  2. إلى إيقاف ثم إعادة تشغيل خدمة SQL Server تشغيل الأوامر التالية في موجه الأوامر:
    mssqlserver net stop
    mssqlserver net start
  3. في SQL Server 2005 تشغيل عبارات SQL للعمليات التالية.
    drop table tgocreate table t (c1 int, c2 int, c3 int, c4 int, c5 int, c6 int, c7 int, c8 int, c9 int, c10 int)godrop function fn_testgocreate function fn_test (@p1 int, @p2 int, @p3 int, @p4 int, @p5 int, @p6 int, @p7 int, @p8 int, @p9 int, @p10 int)returns @t table (c1 nvarchar(4) )with schemabindingasbegininsert into @t values (N'abcd')returnendgodrop function fn_scalargocreate function fn_scalar (@p1 int, @p2 int, @p3 int, @p4 int, @p5 int, @p6 int, @p7 int, @p8 int, @p9 int, @p10 int)returns nvarchar(4) with schemabindingasbegindeclare @s nvarchar (4)set @s = N'abcd' return @sendgodrop function fn_test2gocreate function fn_test2 ()returns @t table (c1 nvarchar(4) )with schemabindingasbegininsert into @t values (N'abcd')returnendgoset nocount ongodeclare @i intset @i = 0while @i < 5000000begininsert into t values (@i, @i, @i, @i, @i, @i, @i, @i, @i, @i)set @i = @i + 1endgo-- The following select query returns the 701 error if you restrict max server memory to 300 MBselect count(*) from t cross apply dbo.fn_test(c1,c2,c3,c4,c5,c6,c7,c8,c9,c10)
ملاحظة استخدم الخطوات التالية TVF SQL للعمليات. تحدث هذه المشكلة عند استخدام TVF CLR.

تحذير: تمت ترجمة هذا المقال تلقائياً

خصائص

رقم الموضوع: 924954 - آخر مراجعة: 01/17/2015 16:08:30 - المراجعة: 1.6

  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Enterprise X64 Edition
  • Microsoft SQL Server 2005 Standard X64 Edition
  • Microsoft SQL Server 2005 Standard Edition
  • kbnosurvey kbarchive kbmt kbautohotfix kbfix kbsql2005tsql kbexpertiseadvanced kbhotfixserver kbqfe kbpubtypekc KB924954 KbMtar
تعليقات