c# sqlserver 查询两个表中数据用datagridview 显示出来 老师出错 求大神指导
      string sql = " select   a.2, a.3, b.2, b.3 from a, b, c where a.1= c.1 and b.1 = c.1 ";   //查询语句太长 我就直接把意思表达出来 没有粘代码
                DataSet ds1 = new DataSet();
        DataTable dt = new DataTable ();
        DataSet ds2 = new DataSet();
        SqlDataAdapter da = new SqlDataAdapter(sql, conn);
        da.Fill(ds1);

        dt = ds1.Tables[0].Copy();
                     ds2.Tables.Add(dt);
        dataGridView1.DataSource  = ds2.Tables[0];

3个回答

你什么问题?dataGridView1显示不了数据吗,dataGridView1设置了列的字段对应了吗

wulalala_lm
haroro_lyq 刚才发现是查询语句出错了 针对两张表直接没有直接关联,但是这两张表的主键分别是第三张表的外键,这时查询前两张表里的内容 怎么写优化一点的查询啊
接近 5 年之前 回复

刚才发现是查询语句出错了 针对两张表直接没有直接关联,但是这两张表的主键分别是第三张表的外键,这时查询前两张表里的内容 怎么写优化一点的查询啊

sql粘上来,才知道

wulalala_lm
haroro_lyq 回复wulalala_lm: 这个其实就是我帖子上描述的那个意思 只是这个着实太麻烦
接近 5 年之前 回复
wulalala_lm
haroro_lyq sql 写的好像不对 所以datagridview 显示的时候溢出了 虽然知道错了 但是不知道怎么改
接近 5 年之前 回复
wulalala_lm
haroro_lyq string sql = "select POINT_STAGE .NAME , WATER_DATA .WATER_LEVEL, WATER_DATA .GSM, WATER_DATA .INPUT_DATE , WATER_DATA .VOLTAGE , POINT_STAGE .LOW_STAGE ,POINT_STAGE .HIGH_STAGE ,POINT_STAGE .UPPER ,WATER_DATA .INPUT_DATE , WATER_DATA .VOLTAGE , WATER_DATA .GSM from WATER_DATA, POINT_STAGE , POINT_PHONE where WATER_DATA.PHONE_ID = POINT_PHONE.PHONE_ID AND POINT_STAGE .POINT_STAGE_ID = POINT_PHONE .POINT_ID ";
接近 5 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问