أنت غير متصل حاليًا، وفي انتظار الإنترنت الخاص بك ليقوم بإعادة الاتصال

FIX: يستخدم رسالة خطأ عند تشغيل استعلام "LINQ إلى وحدات" التي معلمة سلسلة أو معلمة ثنائية مقابل قاعدة بيانات SQL Server ضغط على 3.5: "لا يمكن استخدام أنواع البيانات ntext والصور في WHERE، HAVING ، تجميع BY ON أو في عبارات"

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

اضغط هنا لرابط المقالة باللغة الانجليزية958478
الموجز
توضح هذه المقالة التالية حول هذا الإصدار على الإصلاح العاجل:
  • المشكلات التي يتم إصلاحها من خلال حزمة الإصلاحات الجديدة
  • المتطلبات المسبقة لتثبيت حزمة الإصلاحات الجديدة
  • ما إذا كان يجب إعادة تشغيل الكمبيوتر بعد تثبيت حزمة الإصلاحات الجديدة
  • ما إذا كان يتم استبدال حزمة الإصلاحات الجديدة بواسطة حزمة الإصلاحات الجديدة الأخرى
  • ما إذا كان يجب إجراء أية تغييرات التسجيل
  • الملفات المضمنة في حزمة الإصلاحات الجديدة
الأعراض
اطلع على السيناريو التالي. يستخدم تطبيق Microsoft ADO.NET وحدة Framework المضمنة في الخدمة Microsoft .NET Framework 3.5 Service Pack 1 للوصول إلى قاعدة بيانات Microsoft SQL Server ضغط 3.5. في التطبيق، تشغيل استعلام "LINQ إلى وحدات" يستخدم معلمة سلسلة أو معلمة ثنائية قاعدة بيانات. في هذا السيناريو، تظهر رسالة الخطأ التالية عند تشغيل التطبيق:
لا يمكن استخدام أنواع البيانات ntext والصور في WHERE ، باستثناء يتم استخدام هذه الأنواع من البيانات مع LIKE HAVING أو GROUP BY ، ON أو في عبارات, أو IS التقييم فارغة.
السبب
عند استخدام معلمات الاستعلام "LINQ إلى وحدات" في تطبيق لا يمكنك تحديد أنواع قواعد البيانات الأساسي. يحاول الموفر SQL Server ضغط وحدة Framework إنشاء معلمة موفر مستوى استناداً إلى واجهات طراز البيانات الوحدة (EDM) المعلمة الأصلي. ضغط ملقم SQL لا يعتمد نوع البيانات nvarchar(max) أو نوع البيانات varbinary(max). لذلك، عندما يحدد "الموفر" نوع بيانات لمعلمة من نوع البيانات Edm.String أو من نوع البيانات Edm.Binary ، يحتوي الموفر لوضع علامة المعلمة أحد أنواع البيانات التالية استناداً إلى واجهات EDM المعلمة:
  • بالنسبة إلى معلمة سلسلة الموفر الذي يحدد نوع البيانات nvarchar(4000) أو نوع البيانات ntext.
  • لمعلمة ثنائية الموفر تحديد نوع البيانات varbinary(4000) أو نوع بيانات الصورة.
إذا كان الموفر علامات المعلمة كنوع بيانات nvarchar(4000) أو كنوع بيانات varbinary(4000) ، يحدث خطأ عند محاولة إدراج القيم الأكبر من 8.000 بايت. بالإضافة إلى ذلك، إذا علامات الموفر المعلمة نوع بيانات ntext أو كنوع بيانات الصورة ، يحدث خطأ إذا كان أي عمليات قيد مساواة أو عمليات التجميع أو عمليات الفرز قيد التنفيذ على المعلمة.
الحل

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

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

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

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

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

لتطبيق هذا الإصلاح العاجل، يجب إلغاء تثبيت تم تثبيته مسبقاً SQL Server ضغط 3.5 Service Pack 1 تثبيت ملف .msi الذي يتم توفيره مع هذا الإصلاح الجديد. إذا كان تم تثبيته مسبقاً SQL Server ضغط 3.5 Service Pack 1 لا إلغاء تثبيت ، تتلقى رسالة خطأ تثبيت تشير إلى إصدار أحدث من SQL Server ضغط مثبت مسبقاً. لمزيد من المعلومات حول SQL Server ضغط 3.5 Service Pack 1 انقر فوق رقم المقالة التالي لعرضها في "قاعدة المعارف لـ Microsoft:
955965وصف من SQL Server ضغط 3.5 Service Pack 1

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

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

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

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

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

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

يحتوي إصدار اللغة الإنجليزية من هذا الإصلاح العاجل سمات الملف (أو أحدث منها) المسردة في الجدول التالي. يتم سرد التواريخ والأوقات الخاصة بهذه الملفات في "حسب التوقيت العالمي" (UTC). عندما تقوم بعرض معلومات الملف، يتم تحويلها إلى التوقيت المحلي. لمعرفة الفرق بين التوقيت العالمي (UTC) والتوقيت المحلي، استخدم علامة التبويب المنطقة الزمنية في عنصر التاريخ والوقت في "لوحة التحكم".
اسم الملفإصدار الملفحجم الملفتاريخالوقتالنظام الأساسي
System.data.sqlserverce.entity.dll3.5.5692.1230,480٢٤ سبتمبر ٢٠٠٨٦: 46x 86 / x 64/IA-64
System.data.sqlserverce.dll3.5.5692.1271,440٢٤ سبتمبر ٢٠٠٨٦: 46x 86 / x 64
Policy.3.5.system.data.sqlserverce.dll3.5.5692.113,392٢٤ سبتمبر ٢٠٠٨٦: 46x 86 / x 64
Policy.3.5.system.data.sqlserverce.entity.dll3.5.5692.113,392٢٤ سبتمبر ٢٠٠٨٦: 46x 86 / x 64
Sqlceca35.dll3.5.5692.1343,104٢٤ سبتمبر ٢٠٠٨08: 07x 86
Sqlcecompact35.dll3.5.5692.184,544٢٤ سبتمبر ٢٠٠٨08: 07x 86
Sqlceer35en.dll3.5.5692.1148,032٢٤ سبتمبر ٢٠٠٨08: 07x 86
Sqlceme35.dll3.5.5692.165,088٢٤ سبتمبر ٢٠٠٨08: 07x 86
Sqlceoledb35.dll3.5.5692.1172,608٢٤ سبتمبر ٢٠٠٨08: 07x 86
Sqlceqp35.dll3.5.5692.1644,160٢٤ سبتمبر ٢٠٠٨08: 07x 86
Sqlcese35.dll3.5.5692.1348,224٢٤ سبتمبر ٢٠٠٨08: 07x 86
تصريح
أقرت Microsoft أن هذه مشكلة في منتجات Microsoft المسردة في قسم "تنطبق على".
معلومات أخرى
بعد تطبيق هذا الإصلاح العاجل الموفر غير تخمين نوع بيانات لمعلمة من نوع البيانات EDM.String أو من نوع البيانات EDM.Binary. معالج استعلام تحديد نوع البيانات الصحيح لمعلمة استناداً إلى القيمة أو العمود الذي المعلمة equated أو مع التي يتم استخدام المعلمة.

على سبيل المثال، في استعلام SQL الوحدات التالية المعالج استعلام تحديد نوع بيانات ntext معلمة اسم قبل تطبيق هذا الإصلاح العاجل.
String name = "XYZ";var q = from e in nwind.Employees           where e.First_Name = name           select e;
بعد تطبيق هذا الإصلاح الجديد يتم تحديد نوع بيانات العمود الاسم_الأول معلمة اسم.

ومع ذلك، في المثال التالي، "LINQ إلى الوحدة" يفشل الاستعلام لأن معلمة اسم هو ليس لديها equated إلى أو استخدامه مع أية قيمة أخرى أو العمود.
String name = "XYZ";var q = from e in nwind.Employees           select name;
كما يعمل هذا الإصلاح العاجل على حل مشكلة معروفة الموضحة في المستند التمهيدي لـ 3.5 ضغط لـ SQL Server. لمزيد من المعلومات، راجع القسم "SQL Server ضغط 3.5 SP1 Runtime المشاكل الخاصة ADO.NET وحدة Framework" من موقع Microsoft التالي على الويب:يعمل هذا الإصلاح العاجل على حل المشكلة التي ترتبط غير صحيحة من عبارات SQL للعمليات التي يتم إنشاؤها عند تحويل الموفر استعلامات فرعية مفردة لتطبيق ثوابت.

ملاحظة يتم تحويل correlated الاستعلامات الفرعية إلى الاستعلامات الفرعية مفردة داخلياً. الاستعلامات الفرعية correlated غير معتمدة في هذا الإصدار. عند تشغيل هذه الاستعلامات تتلقى رسالة الخطأ التالية:
حدث خطأ أثناء تنفيذ تعريف الأمر. راجع الاستثناء الداخلي للحصول على التفاصيل.
يحتوي الاستثناء الداخلي على الرسالة التالية:
حدث خطأ في توزيع الاستعلام. [.. ، رمز الخطأ = AS]
هو السبب يفسر Framework وحدة ADO.NET الاستعلام الإدخال كاستعلام التي تحتوي على نوع الصلة "بين تطبيق" أو نوع الصلة "تطبيق خارجية". إذا الجانب الأيسر من شرط صلة وترجع قيمة مفردة ، يتم تحويل الصلة في استعلام فرعي القيم مفردة. قام موفر Framework وحدة ADO.NET SQL Server ضغط تحويل هذا الاستعلام الفرعي مفردة إلى استعلام مكافئ له نوع الصلة "تطبيق خارجية" وهو معتمد بواسطة ضغط SQL Server. ولكن، في هذا الإصدار، هذا التحويل هو لم تتم بشكل صحيح. على سبيل المثال، يحدث خطأ الاستعلام التالي في هذا الإصدار.
C# Sample Application:using (NorthwindEntities nwEntities = new NorthwindEntities()){    var orders = nwEntities.Employees                .Select(employee => employee.Orders.Max(order => order.Order_ID));    foreach (var order in orders)    {       Console.WriteLine(order.ToString());    }}
لمزيد من المعلومات حول مخطط التسمية لتحديثات SQL Server "، انقر فوق رقم المقالة التالي لعرضها في" قاعدة المعارف لـ Microsoft:
822499مخطط تسمية جديدة حزم تحديثات برامج Microsoft SQL Server
لمزيد من المعلومات حول مصطلحات تحديث البرامج "، انقر فوق رقم المقالة التالي لعرضها في" قاعدة المعارف لـ Microsoft:
824684وصف للمصطلحات القياسية المستخدمة في وصف تحديثات برامج Microsoft

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

خصائص

رقم الموضوع: 958478 - آخر مراجعة: 02/17/2009 19:46:14 - المراجعة: 1.1

Microsoft SQL Server Compact 3.5

  • kbmt kbexpertiseadvanced kbfix kbautohotfix kbsurveynew kbqfe kbhotfixserver KB958478 KbMtar
تعليقات
ript type="text/JavaScript" async=""> var varAutoFirePV = 1; var varClickTracking = 1; var varCustomerTracking = 1; var Route = "76500"; var Ctrl = ""; document.write(" >