使用标签列将数据从sql db显示到datagridview [英] Display data form sql db onto datagridview with labled columns

查看:53
本文介绍了使用标签列将数据从sql db显示到datagridview的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个带有数据gridview的表单,其中包含6个标记列。我想显示来自

sql db的数据到只有3个标记列。我试过但只有db中的第一行在datagridview上显示

。请帮帮我

以下是我用的代码



 public void loadproduct3()
{
SqlConnection conn = new SqlConnection(ConfigurationSettings.AppSettings [ConnectionString]);
conn.ConnectionString =数据源= USER-PC;初始目录= BARDB;用户ID = sa;密码=迈克;
conn.Open();
SqlCommand cmd = new SqlCommand();
string sqlQueryy = null;
sqlQueryy =select * from tblproduct;
cmd.Connection = conn;
cmd.CommandText = sqlQueryy;
cmd.CommandType = System.Data.CommandType.Text;
SqlDataReader dr = null;
dr = cmd.ExecuteReader();
if(dr.Read())
{
for(int i = 0; i< dgvSales.Rows.Count; i ++)
{
dgvSales。行[i] .Cells [clmProductid]。Value = dr [productid]。ToString();
dgvSales.Rows [i] .Cells [clmProductname]。Value = dr [productname]。ToString();
dgvSales.Rows [i] .Cells [clmUnitprice]。Value = dr [unitprice]。ToString();
}
}
其他
{
//返回false;
}
conn.Close();
}

解决方案

使用以下内容:



< pre lang =c#> public void loadproduct3()
{
SqlConnection conn = new SqlConnection(ConfigurationSettings.AppSettings [ ConnectionString ]);
conn.ConnectionString = 数据源= USER-PC;初始目录= BARDB;用户ID = sa;密码=迈克;


SqlDataAdapter oSDA = new SqlDataAdapter( select * from tblproduct,conn);
DataSet oDs = new DataSet();
oSDA.SelectCommand.CommandType = CommandType.Text;
oSDA.Fill(oDs);

if (oDs.Tables [ 0 ]。Rows.Count > 0
{
dgvSales.DataSource = oDs;
dgvSales.DataBind();
}
}


迈克我觉得你应该先使用dr.read()之前先用

... for ....循环

将以


结束时结束

i have a form with data gridview which has 6 labled columns. i want to display data from
sql db onto only 3 of the labled columns. i tried but only the first row in the db gets displayed
on the datagridview. please help me out
below are the codes i used

public void loadproduct3()
        {
            SqlConnection conn = new SqlConnection(ConfigurationSettings.AppSettings["ConnectionString"]);
            conn.ConnectionString = "Data Source=USER-PC;Initial Catalog=BARDB;User ID=sa;Password=mike";
            conn.Open();
            SqlCommand cmd = new SqlCommand();
            string sqlQueryy = null;
            sqlQueryy = "select * from tblproduct";
            cmd.Connection = conn;
            cmd.CommandText = sqlQueryy;
            cmd.CommandType = System.Data.CommandType.Text;
            SqlDataReader dr = null;
            dr = cmd.ExecuteReader();
            if (dr.Read())
            {
                for (int i = 0; i < dgvSales.Rows.Count; i++)
                {
                    dgvSales.Rows[i].Cells["clmProductid"].Value = dr["productid"].ToString();
                    dgvSales.Rows[i].Cells["clmProductname"].Value = dr["productname"].ToString();
                    dgvSales.Rows[i].Cells["clmUnitprice"].Value = dr["unitprice"].ToString();
                }
            }
            else
            {
                //return false;
            }
            conn.Close();
        }

解决方案

Use the below:

public void loadproduct3()
    {
        SqlConnection conn = new SqlConnection(ConfigurationSettings.AppSettings["ConnectionString"]);
        conn.ConnectionString = "Data Source=USER-PC;Initial Catalog=BARDB;User ID=sa;Password=mike";


        SqlDataAdapter oSDA = new SqlDataAdapter("select * from tblproduct", conn);
        DataSet oDs = new DataSet();
        oSDA.SelectCommand.CommandType = CommandType.Text;
        oSDA.Fill(oDs);

        if (oDs.Tables[0].Rows.Count > 0)
        {
            dgvSales.DataSource = oDs;
            dgvSales.DataBind();
        }
    }


mike I think you should use first
while dr.read() before ... for .... to loop
which will end with end while


这篇关于使用标签列将数据从sql db显示到datagridview的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆