none
Inserir dados no banco através de um dataGridview em C# RRS feed

  • Pergunta

  • Olá tenho um formulário C# (Foto) inserir a descrição da imagem aqui com um textbox onde digito o dia da semana e um data data datagrid onde digito as horas. Eu coloquei uma coluna chamada horário, com DataGridViewCellStyle { Format=t } manual. Mas a mascara : não está aparecendo em tempo de execução. Estou usando o seguinte loop para salvar. void INSERIRHORARIO() { //Instância da conexão onde passo a //ConnectionString var conn = new MySqlConnection("Persist Security Info=False;Server=10.1.1.50;database=sistema_escola;uid=alfa;pwd=;"); // //sql que será executado na tabela cliente var sql = "INSERT INTO dia_hora (dia, horario, qtdVagas) " + "VALUES (@dia, @horario, @qtdVagas)"; //instância do comando onde passo //o sql e a conexão como parâmetro var cmd = new MySqlCommand(sql, conn); //abro a conexão strSelect = "SELECT SUM(qtdVagas) AS Vagas FROM laboratorio"; DataTable tabela; tabela = conexao.ExecultarSelect(strSelect); conn.Open();

            //percorro o DataGridView
            for (int i = 0; i < dGVHorario.Rows.Count - 1; i++)
            {
                //limpo os parâmetros
                cmd.Parameters.Clear();
                //crio os parâmetro do comando
                //e passo as linhas do dgvClientes para eles
                //onde a célula indica a coluna do dgv
                cmd.Parameters.AddWithValue("@dia", txtDiadaSemana.Text);
                //dGVHorario.Rows[i].Cells[0].Value);
                cmd.Parameters.AddWithValue("@horario", dGVHorario.Rows[i].Cells[0].Value);
                cmd.Parameters.AddWithValue("@qtdVagas", tabela.Rows[0]["Vagas"].ToString());
    
                //executo o comando
                cmd.ExecuteNonQuery();
            }
            //Fecho conexão
            conn.Close();

    Mas, estou trabalhando com orientação objeto, então eu já tenho uma calasse para conexão, e um classe para cadastrar os horários. Há como fazer loop pegar a conexão de minha calasse, e enviar os dodos para a classe de horário?

    quarta-feira, 13 de agosto de 2014 12:49

Respostas

  • Usei código abaixo, e deu certo. 

    strSelect = "SELECT SUM(qtdVagas) AS Vagas FROM laboratorio";
                    DataTable tabela;
                    tabela = conexao.ExecutarSelect(strSelect);

                    for (int i = 0; i < dgvhorario.Rows.Count - 1; i++)
                    {
                        diahora.Dia = txtDiadaSemana.Text;
                        diahora.Horario = Convert.ToString(dgvhorario.Rows[i].Cells[0].Value);
                        diahora.QtdVagas =Convert.ToInt32(tabela.Rows[0]["Vagas"].ToString());
                        diahora.SALVAR();
                    }            

    • Marcado como Resposta Fabrício Mendes terça-feira, 21 de outubro de 2014 12:18
    quarta-feira, 13 de agosto de 2014 18:17

Todas as Respostas

  • Usei código abaixo, e deu certo. 

    strSelect = "SELECT SUM(qtdVagas) AS Vagas FROM laboratorio";
                    DataTable tabela;
                    tabela = conexao.ExecutarSelect(strSelect);

                    for (int i = 0; i < dgvhorario.Rows.Count - 1; i++)
                    {
                        diahora.Dia = txtDiadaSemana.Text;
                        diahora.Horario = Convert.ToString(dgvhorario.Rows[i].Cells[0].Value);
                        diahora.QtdVagas =Convert.ToInt32(tabela.Rows[0]["Vagas"].ToString());
                        diahora.SALVAR();
                    }            

    • Marcado como Resposta Fabrício Mendes terça-feira, 21 de outubro de 2014 12:18
    quarta-feira, 13 de agosto de 2014 18:17
  • Voce postou em local incorreto,para postagens com codigos em C# use este Link

    Microsoft Technology Associate (MTA)

    sexta-feira, 15 de agosto de 2014 20:24