delphi - للطلاب - معادلة النسبة المئوية




في دلفي 7، كيف يمكنني الهروب من علامة النسبة المئوية(٪) في الدالة تنسيق؟ (3)

أريد أن أفعل شيئا من هذا القبيل:

SQL.Text := Format('select foo from bar where baz like ''%s%''',[SearchTerm]);

ولكن تنسيق لا يحب أن الماضي '٪'، بطبيعة الحال. فكيف يمكنني الهروب من ذلك؟ \% ؟ %% ؟

أو لا بد لي من القيام بذلك:

SQL.Text := Format('select foo from bar where baz like ''%s''',[SearchTerm+'%']);

؟


إلزامي: http://xkcd.com/327/ :-)

اعتمادا على السياق، قد يكون نهجك عرضة لحقن سكل. إذا كانت عبارة البحث تأتي من إدخال المستخدم فمن المحتمل أن يكون من الأفضل استخدام استعلام معلمات أو على الأقل محاولة لتعقيم المدخلات.


استخدام٪ آخر في سلسلة التنسيق:

SQL.Text := Format('select foo from bar where baz like ''%s%%''',[SearchTerm]);

إضافة علامة 2 في المئة لديك 1٪
مثال:

 Format('select foo from bar where baz like ''%%%s%%'',[SearchString])

يعطيك

select foo from bar where baz like '%SearchString%'




delphi-7