PDA

View Full Version : مشکل در select کردن بانک



mbm007_1364
یک شنبه 22 مهر 1386, 02:08 صبح
با سلام

من در رویداد onchange ادیت1 از دستور

''''+select * from dic WHERE word =' +''''+ edit1.Text

استفاده می کنم اما به محض زدن کلید ' برنامه با مشکل مواجه می شود از دوستان تقاضا دارم مرا راهنمایی کنند

ضمنا به نظر شما کد بهتری برای جستجوی نزدیکترین کلمه در بانک وجود دارد؟

SYNDROME
یک شنبه 22 مهر 1386, 05:04 صبح
با سلام

با سلام
من در رویداد onchange ادیت1 از دستور
''''+select * from dic WHERE word =' +''''+ edit1.Text
استفاده می کنم اما به محض زدن کلید ' برنامه با مشکل مواجه می شود از دوستان تقاضا دارم مرا راهنمایی کنند
ضمنا به نظر شما کد بهتری برای جستجوی نزدیکترین کلمه در بانک وجود دارد؟
کد خود را به شکل زیر نغییر بده.

t
select * from dic WHERE word Like ''%'+ edit1.Text+'%''';

حالا برنامه را تست کن.در ضمن در OnkeyPress مربوط به Edit هم چک کن تا بعضی از مقادیر تایپ نشود.
موفق باشید

vcldeveloper
یک شنبه 22 مهر 1386, 07:34 صبح
بجای اینکه تعداد زیای علامت نقل قول استفاده کنید، از تابع QuotedStr استفاده کنید:

'SELECT * FROM dic WHERE Word = ' + QuotedStr(Edit1.Text);

در ضمن، از اونجایی که ظاهرا این کوئری به دفعات استفاده میشه، بجای اینکه هر بار دستور SQL را متناسب با جستجو تغییر بدید، از پارامتر در دستور SQL استفاده کنید. چون قبلا این موضوع توضیح داده شده -همین چند روز پیش هم در یک تاپیک دیگه تکرار کردم- دیگه اینجا توضیح نمیدم. خودتون کلمه Parameter را جستجو کنید:
SELECT * FROM dic WHERE Word = :Param1

mbm007_1364
یک شنبه 22 مهر 1386, 11:57 صبح
با تشکر از جوابتون حتما تست میکنم