C# 连接数据库多表查询显示

sinat_38187599 2017-04-07 02:14:59
想对两个表进行查询显示,从第一个表中提取一个信息,从第二个表中提取一个,然后一起显示在dataGridView,用的下面的代码,运行后报错显示如下。不太清楚是哪里的问题,初学,不知道select后,数据是怎么存在ds里的,感觉这个错误好像是我的第二个查询是空的,求教!拜托拜托~~~(不知道代码怎么弄成那种带行号的。。。只会复制粘贴。。。)


string sql = "select " + QEEP + " from 电能质量 where 电站编号='" + textBox7.Text + "'"
+"select " + Voltage + " from 电压质量 where 电站编号='" + textBox7.Text + "'";

SqlConnection CONN = new SqlConnection(str_con);
//打开数据库连接
CONN.Open();

SqlCommand comm = new SqlCommand(sql, CONN);
SqlDataAdapter da = new SqlDataAdapter(comm);

DataSet ds = new DataSet();

da.Fill(ds, "电能质量,电压质量");

dataGridView2.DataSource = ds;
dataGridView2.DataMember = "电能质量,电压质量";

//**********************列头设置*****************************
dataGridView2.Columns[0].HeaderText = " " + QEEP + "";
//设置dataGridView1控件第一列的列宽
dataGridView2.Columns[0].Width = 150;

dataGridView2.Columns[1].HeaderText = "" + Voltage + "";
dataGridView2.Columns[1].DataPropertyName = ds.Tables[1].Columns[0].ToString();
dataGridView2.Columns[1].Width = 80;

CONN.Close();


...全文
336 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
string sql = "select " + QEEP + " from 电能质量 where 电站编号='" + textBox7.Text + "'" +" union select " + Voltage + " from 电压质量 where 电站编号='" + textBox7.Text + "'";
xuzuning 2017-04-07
  • 打赏
  • 举报
回复
你 string sql = "select " + QEEP + " from 电能质量 where 电站编号='" + textBox7.Text + "'" ...... 查询的结果中只有一列 并不存在 dataGridView2.Columns[1] 再说你联合的两个 select 子句,缺少 union! 根本就是错的,并不可能查询出结果
江南小鱼 2017-04-07
  • 打赏
  • 举报
回复
不太清楚是哪里的问题,初学,不知道select后,数据是怎么存在ds里的 学习下ado.net的基础知识
江南小鱼 2017-04-07
  • 打赏
  • 举报
回复
1、你的错误是dataGridView2没有列导致的,度娘找个demo学习下dataGridView控件怎么使用 2、你的sql语句可以改成
string sql = "select " + QEEP + " from 电能质量 where 电站编号='" + textBox7.Text + "'"
                                            +"union all select " + Voltage + " from 电压质量 where 电站编号='" + textBox7.Text + "'";
在sql server中union all是合并结果集
angel6709 2017-04-07
  • 打赏
  • 举报
回复
select a as A, b as B,c as C from t1 union select a2 as A, b2 as B,c2 as C from t2
exception92 2017-04-07
  • 打赏
  • 举报
回复
http://www.cnblogs.com/alexis/archive/2010/11/06/1870519.html Columns 应该只有一列,手动添加新列,并指定DataPropertyName 为查询出来的字段名称。 很基础,先去学学DataGridView 常用的属性。

110,499

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧