PDA

View Full Version : سوال: جستجوی کلمات مشابه با وارد کردن یک حرف



msartin
سه شنبه 18 شهریور 1393, 14:59 عصر
من توی برنامم یه جستجوی نام دارم که با وارد کردن یک حرف، فقط اسامی که با اون حرف شروع میشن رو میاره.
میخواستم بدونم راهی داره که با وارد کردن یک حرف، اسامی که اون حرف رو دارن به من نشون داده بشه؟

mreram
سه شنبه 18 شهریور 1393, 15:11 عصر
با سلام
از کدوم ORM استفاده میکنی ؟

اگر با Entity framework کار میکنی با این کد راحت میتونی جستجو انجام بدی

var query = db.products.Where(i => i.name.Contains(textBox1.Text));
dataGridView1.DataSource = query.ToList();

aminmousavi
سه شنبه 18 شهریور 1393, 16:08 عصر
سلام دوست عزیز . با کوئری زیر میتونی این کار رو انجام بدی :


"SELECT * FROM USERS WHERE Name LIKE '%"+TextBox1.Text+"%'";

توی تکس باک اگر مثلا حرف "ن" رو بزاری ، هر کجای اسم که حرف "ن" داشته باشه رو برات میاره

msartin
سه شنبه 18 شهریور 1393, 22:18 عصر
با تشکر از دوستان، من از استورد پروسیجر استفاده می کنم. راه حلها رو امتحان کردم و جواب نگرفتم.
استوردی که نوشتم اینه :

ALTER proc [dbo].[selectname]
@name nvarchar(50)
as
select * from phone where name=@name

بجای = نوشتم like ، بازم جواب نداد

farhad.k.t
سه شنبه 18 شهریور 1393, 22:35 عصر
با تشکر از دوستان، من از استورد پروسیجر استفاده می کنم. راه حلها رو امتحان کردم و جواب نگرفتم.
استوردی که نوشتم اینه :

ALTER proc [dbo].[selectname]
@name nvarchar(50)
as
select * from phone where name=@name

بجای = نوشتم like ، بازم جواب نداد


همانطور که دوستان گفتند از دستور like به شکل زیر استفاده نمایید...
select * from phone where name like '%'+@name+'%'

msartin
سه شنبه 18 شهریور 1393, 23:15 عصر
بازم جواب نگرفتم.
ضمنا کد برنامم اینه :

SqlDataAdapter da = new SqlDataAdapter("selectlike", con);
da.SelectCommand.CommandType = CommandType.StoredProcedure;
da.SelectCommand.Parameters.AddWithValue("@name", cmbname.Text);
DataTable dt = new DataTable();
da.Fill(dt);
dgvmain.DataSource = dt;

alireza_g698
چهارشنبه 19 شهریور 1393, 00:23 صبح
بازم جواب نگرفتم.
ضمنا کد برنامم اینه :
SqlDataAdapter da = new SqlDataAdapter("selectlike", con);
da.SelectCommand.CommandType = CommandType.StoredProcedure;
da.SelectCommand.Parameters.AddWithValue("@name", cmbname.Text);
DataTable dt = new DataTable();
da.Fill(dt);
dgvmain.DataSource = dt;



سلام.کد های خدوتون رو توی رویداد textchange و textbox بنویسید و از این کوئری استفاده کنید.

select * from person where name like N'%@name%'

msartin
پنج شنبه 20 شهریور 1393, 00:43 صبح
با تشکر از همه دوستان، بالاخره جواب گرفتم
سپاس از راهنمایی هاتون

alireza_g698
پنج شنبه 20 شهریور 1393, 01:47 صبح
با تشکر از همه دوستان، بالاخره جواب گرفتم
سپاس از راهنمایی هاتون

لطف کنید توضیح بدید چجوری حل شد