0

MySql クエリの結果を DataGridView に入力しようとしていますが、すべてが入っているわけではありません。私のコードは次のとおりです。

try
{
                conn.Open();
                player_search = new MySqlCommand("SELECT * FROM admin;", conn);
                reader = player_search.ExecuteReader();

                int counter = 0;
                while (reader.Read())
                {

                        player_list[0, counter].Value = reader.GetString(0);
                        player_list[1, counter].Value = reader.GetString(1);
                        player_list[2, counter].Value = reader.GetString(6);
                        player_list[3, counter].Value = reader.GetString(7);
                        player_list[4, counter].Value = reader.GetString(8);
                        player_list[5, counter].Value = reader.GetString(9);
                        player_list[6, counter].Value = "Remove";

                        counter = counter+1;

                }
            }

ただし、すべてが入るわけではありません。クエリの最初の行のみを挿入しますか? なぜこれを行うのですか?エラーはありませんか?

4

2 に答える 2

0

解決しました!私は長く曲がりくねったアプローチをしなければなりませんでしたが、うまくいきました!

MySqlCommand mysqlcmd = new MySqlCommand("SELECT * FROM admin;", conn);
            MySqlDataAdapter mysqlad = new MySqlDataAdapter(mysqlcmd);
            DataSet ds = new DataSet();
            mysqlad.Fill(ds);
            DataTable dt = ds.Tables[0];
            player_list.DataSource = dt;
            int rowIndex = 0;
            foreach (DataRow row in dt.Rows)
            {
                int i = 0;

                foreach (var item in row.ItemArray)
                {
                    if (i == 0) {
                        player_list[0, rowIndex].Value = item.ToString();
                    }
                    if (i == 1) {
                        player_list[1, rowIndex].Value = item.ToString();
                    }
                    if (i == 4)
                    {
                        player_list[2, rowIndex].Value = item.ToString();
                    }
                    if (i == 7)
                    {
                        player_list[3, rowIndex].Value = item.ToString();
                    }
                    if (i == 8)
                    {
                        player_list[4, rowIndex].Value = item.ToString();
                    }
                    if (i == 9)
                    {
                        player_list[5, rowIndex].Value = item.ToString();
                    }
                    player_list[6, rowIndex].Value = "Remove";
                    ++i;
                }
                ++rowIndex;
                i = 0;
            }
于 2013-10-25T14:50:55.507 に答える