PDA

View Full Version : مبتدی: نمایش اطلاعات در datagridview



eligol
دوشنبه 04 مهر 1390, 16:40 عصر
سلام
من یک textbox,button و datagridview دارم من می خواهم وقتی کاربر در textbox می نویسد مثلا
احمدی علاوه بر پیدا کردن نام های احمدی نام های ثبت شده مشابه حسینی مثل حسینی پور,حسینی مقدم,حسینی نژاد و ... را پیدا کند و در datagridview نشان بدهد
من از اسکیوال سرور استفاده می کنم

water_lily_2012
دوشنبه 04 مهر 1390, 16:56 عصر
برای پیدا کردن نام های مشابه از دستور LIKE مشابه زیر استفاده کنید

"SELECT * FROM TBLMember WHERE Name LIKE '" + name+ "%'"

eligol
دوشنبه 04 مهر 1390, 17:20 عصر
کد من اینه اینی که شما میگید من نمی دونم کجا باید بنویسم
من از یک رویه در اسکیوال و از sqlDataAdapter استفاده کردم
اسم بانک gold اسم جدول bist1 نام فیلد جدول nam اسم رویه ali3
این کده برنامه من هست
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace WindowsFormsApplication2
{
public partial class Form1 : Form
{
DataSet ds = new DataSet();
string strsql;
string strcon = "Data Source=.;Initial Catalog=gold;Integrated Security=True";
SqlDataAdapter da;
SqlConnection con;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{

strsql = "select * from bist1";
con = new SqlConnection(strcon);
con.Open();
da = new SqlDataAdapter(strsql, con);
da.Fill(ds, "bist1");
textBox1.DataBindings.Add(new Binding("text", ds, "bist1.nam"));
con.Close();
dataGridView1.DataSource = dataSet41;
dataGridView1.DataMember = "ali3";
}

private void button1_Click(object sender, EventArgs e)
{
sqlConnection1.Close();
SqlCommand cmd;
dataSet41.Clear();
cmd = new SqlCommand("ali3", sqlConnection1);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Clear();
cmd.Parameters.AddWithValue("@a13", textbox1.text);
sqlConnection1.Open();
cmd.ExecuteNonQuery();
sqlDataAdapter4.SelectCommand = cmd;
sqlDataAdapter4.Fill(dataSet41);
sqlConnection1.Close();
}

water_lily_2012
دوشنبه 04 مهر 1390, 17:22 عصر
شما باید در بانک اطلاعاتی خودتون این کد را به جای کدی که قبلا نوشته شده است بنویسید
البته به جای ali3 هم می توانید دستور را بنویسید

eligol
دوشنبه 04 مهر 1390, 17:45 عصر
من در اسکیوال زدم ولی این ارور را داد

create procedure ali9
@a9 varchar(50)
as
"SELECT * FROM bist1 WHERE nam LIKE '"+@a9+"%'"


و این خطا را می دهد

Line 4: Incorrect syntax near 'SELECT * FROM bist1 WHERE nam LIKE ''.