PDA

View Full Version : سوال: مشکل در اجرای یه کوئری در سی شارپ



ahangari365
سه شنبه 07 مرداد 1393, 18:49 عصر
من تو یکی از جداولم در بانک SQLSERVER یه فیلدی هست که مقادیر 01 به تعداد 8 عدد موجود است. مثلاً(01000000) یا (100000000) یا (11000000)و... از طرفی هم میخوام این فیلد رو جستجو کنم به اینصورت که هر رکوردی که اولش 1 بود سرچ کنه یا دومش 1 بود یا ...
کد من برای جدول این بود که درست کار می کرد.


da = new SqlDataAdapter("select * from Table1 where noe_parvande like" + "'1_______'", con);



حالا یه پروسیجر نوشتم و کد من اینه. و 6 تا مقدار میگیره در 5 حالت مقادیر حروف هستند و جواب گرفتم ولی در پارامتر نوع پرونده بر اساس 01 است مشکل برخوردم.


da = new SqlDataAdapter("exec SP NULL ,"+"'1_______'"+", NULL,NULL,NULL,NULL", con);



ولی این اروو رو میده.

121703

گیر کار کجاست؟
اگه بگیم روی کاراکتر (_____) خطا میگیره پس چرا در تکه کد اول جواب گرفتم؟
لطفاً راهنماییم کنید.:متفکر::متفکر::متفکر::مت فکر::متفکر:

omid nasri
سه شنبه 07 مرداد 1393, 20:14 عصر
خوب دوست عزیز خودش که به سراحت گفته : ورودی شما نادرست می باشد.

mo.jalilian
سه شنبه 07 مرداد 1393, 21:24 عصر
ورودیش از نوع کاراکتر هستش؟
نمیتونی از % استفاده کنی؟

ahangari365
سه شنبه 07 مرداد 1393, 22:13 عصر
از % نمیشه استفاده کنی، خطا میگیره، آخه کوئری رو از سی شارپ به بانک میفرستم مشکل ایجاد نشد (نمونه کد اولی برا جدول) ولی حالا اومدم از بانک کوئری رو صدا زدم % جواب نداد، این کدهای بالا رو ببینید و بهم بگین که چه طوری مشکل بوجود اومده روحل کنم؟

mo.jalilian
سه شنبه 07 مرداد 1393, 23:14 عصر
اگر % بزارید، دیگه لازم نیست اون رو پاس بدید، توی خود sp، درصد رو می زارید و فقط پارامتر اصلی را پاس میدید.
همین فراخوانی sp رو دستی روی دیتابیس اجرا می کنید خطا میده؟