在c#中如何用dataGridView获得数据库查询结果

来源:百度知道 编辑:UC知道 时间:2024/06/18 01:33:59
string conn = "server=.;database=汽车售票数据库;trusted_connection=sspi";
string sql = "SELECT * FROM 汽车售票表 WHERE 目的站=" + station.Text.ToString();
SqlConnection con = new SqlConnection(conn);
SqlDataAdapter cmd = new SqlDataAdapter(sql, con);
con.Open();
汽车售票数据库DataSet ds = new 汽车售票数据库DataSet();
//如在station的textbox里输入北京汽车站 运行时就说列名北京汽车站无效提示
cmd.Fill(ds);
con.Close();
dataGridView1.DataSource = ds.Tables["汽车售票表"];
各位大哥大姐们帮帮忙哈。。

string sql = "SELECT * FROM 汽车售票表 WHERE 目的站=" + station.Text.ToString();
修改成

string sql = "SELECT * FROM 汽车售票表 WHERE 目的站= '" + station.Text.ToString()+"'";

首先,提示“列名北京汽车站无效提示 ”类似于这样的内容,肯定就是SQL语句写错,或者漏了符号等。
这样找原因就很明显,你的SQL语句有问题。
string sql = "SELECT * FROM 汽车售票表 WHERE 目的站=" + station.Text.ToString();
修改成:
string sql = "SELECT * FROM 汽车售票表 WHERE 目的站='" +
station.Text.ToString()"'";

string sql = "SELECT * FROM 汽车售票表 WHERE 目的站='" + station.Text+ "'";

注意在sql命令行里 文本值要用 单引号括起来。不然它会认为是一个函数或是列名。

string sql = "SELECT * FROM 汽车售票表 WHERE 目的站= '" + station.Text.ToString()+"'"; //sql命令行里 文本值要用 单引号括起来。不能采取你那种不加引号的拼结方式。

dataGridView1.DataSource = ds.Tables["汽车售票表"].defaultview;
dataGridView1.DataBind(); //指定数据源后需要进行绑定。

上面两处地方都需要修改。

string sql = "SELECT