Отображение формы данных sql db в datagridview с помеченными столбцами
у меня есть форма с данными gridview, которая имеет 6 помеченных столбцов. я хочу отобразить данные из
sql db только на 3 из помеченных столбцов. я пробовал, но отображается только первая строка в БД
в объекте datagridview. пожалуйста, помогите мне
ниже приведены коды, которые я использовал
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(); }
[no name]
"отображается только строка в БД", вы читаете данные из своего datareader только один раз, так что все, что вы получите, - это одна строка.
mikeoabban
пожалуйста, как мне прочитать dtatbase несколько раз
[no name]
Вы не. Вы считываете данные из своего считывателя по одному разу для каждой строки. Попробуйте заменить "если "на"пока".
mikeoabban
я попробовал и показал только последнюю строку в БД
[no name]
Значит, ты сделал что-то не так, вот и все, что я могу тебе сказать.