Usuário com melhor resposta
Inserir dados no banco através de um dataGridview em C#

Pergunta
-
Olá tenho um formulário C# (Foto)
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?
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
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
-