PDA

View Full Version : تعریف پارامتر در ado.net 2??



javad3151
یک شنبه 28 آبان 1385, 10:46 صبح
سلام
فرض کنید که سه تا فیلد : نام ، نام خانوادگی و کد دانشجویی داریم ، حالا یه دیتا سورس درست کردم که این سه تا پارامتر رو از 3 تا تکس باکس بگیره، یعنی یوز هر کدوم رو که وارد کرد بر اساس اون جستجو انجام بشه
توی نام و نام خانوادگی مشکلی نیست ، میشه مقدار پیش فرضش رو %% گذاشت ولی برای مقادیر عددی چیکار باید کرد؟(البته میشه با کد نویسی بصورت دستی Select command رو نوشت ، ولی اگر بخواهیم با پارامتر کار کنیم چی؟)

Behrouz_Rad
یک شنبه 28 آبان 1385, 11:53 صبح
پارامتر رو به صورت رشته ای به فیلد عددی پاس بده! چون کاراکتر % از نوع رشته ایه.


DECLARE @pID nvarchar(50)
SET @pID = '5'
SELECT * FROM tblTest WHERE intID LIKE '%' + @pID + '%'

AminSobati
یک شنبه 28 آبان 1385, 16:11 عصر
در مورد Searchهای داینامیک بحثهای خوبی در سایت شده، جستجو کنید

javad3151
یک شنبه 28 آبان 1385, 20:05 عصر
جناب استاد ثباتی
من سرچ کردم ولی فقط یه مورد پیدا کردم که همون روش قبلی خودم (ساخت دستی TSQL ) رو پیشنهاد کرده بودید، میخواستم ببینم واقعا هیچ راه دیگه ای وجود نداره؟
ببینید من سه تا پارامتر دارم که کاربر باید بتونه با استفاده از اونها مثلا فقط کد رو جستجو کنه یا نام و نام خانوادگی رو جستجو کنه:


select .... where id=@id or firstname like @firstname (firstname=@firstname) or surname like @surname

من برای firstname @ و surname @ مقدار پیش فرض %% رو میذارم (یعنی اگر کاربر چیزی ننویسه تمام رکوردها رو برمیگردونه ) ولی نمیدونم برای id@ چیکار کنم

AminSobati
یک شنبه 28 آبان 1385, 22:32 عصر
همه چیز در مورد Dynamic Search!
http://www.sommarskog.se/dyn-search.html