SQLite, Copiar arquivo DataSet / DataTable para DataBase
Preenchi um DataSet com uma tabela criada a partir deoutr arquivo de banco de dados. A tabela NÃO está no arquivo de banco de dados para o qual desejo copiar a tabel
gora, eu quero salvar todos esses registros (DataTable) em um arquivo de banco de dados SQLite recém-criado .
Como eu posso fazer isso
Também quero evitar loops, se isso for possíve
A melhor resposta é por mim :) então eu vou compartilhá-lo. Este é um loop, mas grava 100k entradas em 2-3segundo
using (DbTransaction dbTrans = kaupykliuduomConn.BeginTransaction())
{
downloadas.Visible = true; //my progressbar
downloadas.Maximum = dataSet1.Tables["duomenys"].Rows.Count;
using (DbCommand cmd = kaupykliuduomConn.CreateCommand())
{
cmd.CommandText = "INSERT INTO duomenys(Barkodas, Preke, kiekis) VALUES(?,?,?)";
DbParameter Field1 = cmd.CreateParameter();
DbParameter Field2 = cmd.CreateParameter();
DbParameter Field3 = cmd.CreateParameter();
cmd.Parameters.Add(Field1);
cmd.Parameters.Add(Field2);
cmd.Parameters.Add(Field3);
while (n != dataSet1.Tables["duomenys"].Rows.Count)
{
Field1.Value = dataSet1.Tables["duomenys"].Rows[n]["Barkodas"].ToString();
Field2.Value = dataSet1.Tables["duomenys"].Rows[n]["Preke"].ToString();
Field3.Value = dataSet1.Tables["duomenys"].Rows[n]["kiekis"].ToString();
downloadas.Value = n;
n++;
cmd.ExecuteNonQuery();
}
}
dbTrans.Commit();
}
Nesse caso, dataSet1.Tables ["duomenys"] já está preenchido com todos os dados que preciso transferir para outro banco de dados. Também usei loop para preencher o conjunto de dado