SQL Server Like Operator: تم شرح حساسية الحالة
SQL Server's مثل
يوفر المشغل مطابقة سلسلة قوية. ومع ذلك ، فإن حساسية الحالة الخاصة بها ليست متأصلة في المشغل نفسه. بدلاً من ذلك ، يتم تحديده من خلال جمع العمود.
الترتيب: مفتاح حساسية الحالة
تملي جمع العمود كيف يتم التعامل مع مقارنات الأحرف. يدعم SQL Server العديد من المجموعات ، كل منها يحدد مجموعة الأحرف ، الأبجدية ، وقواعد الحالات الحاسمة.
تحديد التجميع
للتحقق من جمع قاعدة البيانات:
SELECT DATABASEPROPERTYEX('databasename', 'collation') AS SQLCollation;
لعمود معين:
SELECT COLLATION_NAME
FROM sys.columns
WHERE object_id = OBJECT_ID('TableName') AND name = 'ColumnName';
تأثير التصادم على النتائج مثل
تنتج مجموعات مختلفة مثل
النتائج. على سبيل المثال:
sql_latin1_general_cp1_ci_as
: حالة غير حساسة ، حساسة لهجة. sql_latin1_general_cp1_cs_as
: حساسة للحالة ، حساسة لهجة. تعديل التجميع (استخدم بحذر)
بينما لا يشجع عمومًا ، يمكنك تغيير جمع العمود:
ALTER TABLE TableName ALTER COLUMN ColumnName VARCHAR(10) COLLATE new_collation;
بدلاً من ذلك ، يمكنك تجاوز حساسية الحالة مؤقتًا داخل استعلام (غير موصى به للإنتاج):
SELECT column1 COLLATE sql_latin1_general_cp1_ci_as AS column1
FROM table1;
في ملخص
سلسلة دقيقة تتطابق مع SQL Server مثل
يعتمد المشغل على فهم تأثير التجميع. يضمن اختيار الترتيب الدقيق أن يتصرف الاستعلامات كما هو متوقع ، بغض النظر عن متطلبات حساسية الحالة.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3